您身边的网站建设专家
成功案例

【建站服务】北票公众号代运营公司-域名申请

日期: 2022-09-21 04:30:25 浏览数:3


上往建站提供服务器空间服务商百度快照排名网站托管百度推广运营,致力于设计外包服务与源代码定制开发360推广搜狗推广,增加网站的能见度及访问量提升网络营销的效果,主营:网站公司,百度推广公司电话,官网搭建服务,网站服务企业排名,服务器空间,英文域名等业务,专业团队服务,效果好。


北票公众号代运营公司


网站建设.png

对象和对N对象都是相等的。这是因为在初始化M对象时,将M对象的三个int型数据成员的值求和后赋给了Sum,于是Sum保存了该值。在初始化N对象时,对将N对象的三个int型数据成员的值求和后又加到Sum已有的值上,于是Sum将保存另后的值。所以,不论是通过对象M还是通过对象N来引用的值都是一样的,即为54。

静态成员函数

静态成员函数和静态数据成员一样,它们都属于类的静态成员,它们都不是对象成员。因此,对静态成员的引用不需要用对象名。

在静态成员函数的实现中不能直接引用类中说明的非静态成员,可以引用类中说明的静态成员。如果静态成员函数中要引用非静态成员时,可通过对象来引用。下面通过例子来说明这一点。

实例

#includeclass M{public:    M(int a){        A=a;        B+=a;    }        static void f1(M m);private:    int A;    static int B;}; void M::f1(M m){    cout<<"A="<<m.a<<endl;    cout<<"B="<<b<<endl;} int M::B=0; void main(){    M P(5),Q(10);    M::f1(P); //调用时不用对象名    M::f1(Q);}

读者可以自行分析其结果。从中可看出,调用静态成员函数使用如下格式:

  

<类名>::<静态成员函数名>(<参数表>);

C++ 中各种类型的成员变量的初始化方法

C++各种不同类型成员根据是否static、时候const类型的初始化方法不尽相同,java的语法就没有这么复杂,怪的得那么多人都跑去学Java了。以前面试时被人问到这个问题回答不出来,写代码时也经常搞乱了,这里翻了下书,总结一下。

//-----------------Test.h----------------------------#pragma once



读者可以自行分析其结果。从中可看出,调用静态成员函数使用如下格式:


  

<类名>::<静态成员函数名>(<参数表>);

C++ 中各种类型的成员变量的初始化方法

C++各种不同类型成员根据是否static、时候const类型的初始化方法不尽相同,java的语法就没有这么复杂,怪的得那么多人都跑去学Java了。以前面试时被人问到这个问题回答不出来,写代码时也经常搞乱了,这里翻了下书,总结一下。


//-----------------Test.h----------------------------

#pragma once

class Test

{

private :

    int var1;

    // int var11= 4; 错误的初始化方法

    const int var2 ;

    // const int var22 =22222; 错误的初始化方法

    static int var3;

    // static int var3333=33333; 错误,只有静态常量int成员才能直接赋值来初始化

    static const int var4=4444; //正确,静态常量成员可以直接初始化    

    static const int var44;

public:

    Test(void);

    ~Test(void);

};

//--------------------Test.cpp-----------------------------------

#include ". est.h"

 

int Test::var3 = 3333333; //静态成员的正确的初始化方法

 

// int Test::var1 = 11111;; 错误静态成员才能初始化

// int Test::var2 = 22222; 错误

// int Test::var44 = 44444; // 错误的方法,提示重定义

Test::Test(void):var1(11111),var2(22222)正确的初始化方法//var3(33333)不能在这里初始化

{

    var1 =11111; //正确, 普通变量也可以在这里初始化

    //var2 = 222222; 错误,因为常量不能赋值,只能在 "constructor initializer (构造函数的初始化列表)" 那里初始化

          

    var3 =44444; //这个赋值是正确的,不过因为所有对象一个静态成员,所以会影响到其他的,这不能叫做初始化了吧

}

Test::~Test(void){}

//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

有些成员变量的数据类型比较特别,它们的初始化方式也和普通数据类型的成员变量有所不同。这些特殊的类型的成员变量包括:


a. 常量型成员变量

b. 引用型成员变量

c. 静态成员变量

d. 整型静态常量成员变量

e. 非整型静态常量成员变量

对于常量型成员变量和引用型成员变量的初始化,必须通过构造函数初始化列表的方式进行。在构造函数体内给常量型成员变量和引用型成员变量赋值的方式是行不通的。

北票公众号代运营公司


上往建站提供搭建网站域名注册官网备案服务网店详情页设计企业网店专业网络店铺管理运营全托管公司咨询电话,服务器空间,微信公众号托管网页美工排版,致力于域名申请竞价托管软文推广全网营销,提供标准级专业技术保障,了却后顾之忧,主营:虚拟主机网站推广百度竞价托管网站建设上网建站推广服务网络公司有哪些等业务,专业团队服务,效果好。

服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)


全国咨询热线:400-111-6878

地址:全国各地都有驻点商务

Copyright © 2021 通陆科技

网站建设上往建站