`
oraclestudy
  • 浏览: 481356 次
文章分类
社区版块
存档分类

C++中的static成员、static const成员和const成员的初始化

 
阅读更多

(1)static成员要在类外初始化:这样的成员是属于整个类的,但非常量,所以可以类外初始化,也可以用静态函数初始化。


(2)const static成员可在类内初始化:这样的成员是属于整个类的常量。



(3)const成员要在构造函数初始化表中初始化:这样的成员是每个对象中都有的,只不过是常量,所以要在每次构造对象时初始化。


分享到:
评论

相关推荐

    类的static,const,static const,const static成员的初始化

    static,const,static const,const static是c++中几个常见的很容易弄混淆的几个概念,在这里总结了一下,与大家分享!

    const成员函数、初始化列表、static成员1

    const成员函数、初始化列表、static成员1

    c++ 类中const成员变量的赋值方法

    在头文件的类的定义中定义了一个const成员变量c++ 规则: 1、类定义中不能进行初始化,因为头文件中类的定义只是一个声明,并没有分配真正空间,因此变量是不存在的,因此是不能赋值的。 2、const 定义的变量是不能...

    C++类中的static和const用法实例教程

    A():m(10) //const成员必须在构造函数的初始化构造列表中初始化 { q = 40; } void fun1()const { m++; //错误。const成员是常量,不能改变其值。 n++; //正确。static变量n属于类,但是每个对象的函数都可以...

    关于C++中构造函数初始化成员列表的总结

    3.关于static const是否应该在初始化成员列表中初始化?  static const为全局静态常量,全局的意思是该变量属于整个类而非某个类实例,所以不能再初始化列表中进行初始化。 以上就是小编为大家带来的关于C++中构造...

    简述C++11就地初始化与列表初始化

    在C++11中,结构体或类的数据成员在申明时可以直接赋予一个默认值,初始化的方式有两种,一是使用等号“=”,二是使用大括号列表初始化的方式。注意,使用参考如下代码: class C { private: int a=7; //C++11 ...

    C++中静态成员函数与静态成员变量(static )

    C++中静态成员函数与静态成员变量(static ) 这篇介绍了静态成员函数与静态成员变量,是我的读书笔记,我希望它够简短但又比较全面,起到复习的作用。如果有一些C++知识记不清楚了,它可以帮你很快回忆起来。 复习...

    C++ 静态成员的类内初始化详解及实例代码

    C++ 静态成员的类内初始化详解及实例代码 一般来说,关于C++类静态成员的初始化,并不会让人感到难以理解,但是提到C++ 静态成员的”类内初始化”那就容易迷糊了。 我们来看如下代码: //example.h #include #...

    C++类的静态成员初始化详细讲解

    但如果静态成员是整型或是枚举型const,则可以在类声明中初始化!!! 代码如下:#include <iostream>using namespace std;class test{public:static int num;};int test::num = 0;void main(){cout<<test::num &lt...

    static 用法

    (对于C++中的class对象例外, class的对象实例如果不初始化, 则会自动调用默认构造函数, 不管是否是static类型) 特点: static局部变量的”记忆性”与生存期的”全局性” 所谓”记忆性”是指在两次函数调用时, 在...

    新手学习C++入门资料

    C++中new和delete是对内存分配的运算符,取代了C中的malloc和free。 标准C++中的字符串类取代了C标准C函数库头文件中的字符数组处理函数。 C++中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。...

    C++ Primer第四版【中文高清扫描版】.pdf

    3.2.1 string对象的定义和初始化 70 3.2.2 String对象的读写 71 3.2.3 string对象的操作 72 3.2.4 string对象中字符的处理 76 3.3 标准库vector类型 78 3.3.1 vector对象的定义和初始化 79 3.3.2 vector对象的操作 ...

    C++静态成员变量和静态成员函数的使用方法总结

    一.静态成员变量: 类体中的数据成员的声明前加上static关键字,该数据成员就成为了该类的静态数据成员。和其他数据成员一样,静态...//声明,标准c++支持有序类型在类体中初始化,但vc6不支持。 }; xxx.cpp文件 co

    C++编程思想习题

    7.4.3const对象和成员函数 7.4.4只读存储能力 7.5可变的(volatile) 7.6小结 7.7练习 第8章 内联函数 8.1预处理器的缺陷 8.2内联函数 8.2.1类内部的内联函数 8.2.2存取函数 8.3内联函数和编译器 8.3.1局限性 8.3.2...

    C++大学教程,一本适合初学者的入门教材(part1)

    6.14 使用数据成员和成员函数 6.15 微妙的陷阱:返回对Private数据成员的引用 6.16 通过默认的成员复制进行赋值 6.17 软件复用性 6.18 有关对象的思考:编写电梯模拟程序的类 小结 术语 自测练习 自测练习答案 ...

    C++技术培训.doc

    C++程序设计专题讲座 3 1 第一部分 3 1.1 sizeof 3 1.2 宏 4 1.3 隐式类型转换 5 ...2.5.2 成员初始化列表 38 2.5.3 拷贝构造函数 41 2.5.4 虚析构函数 47 2.5.5 隐藏数据成员 49 2.5.6 单实例对象 54

    传智播客_C++基础课程讲义_v1.0.7

    面试题6:虚函数表指针(VPTR)被编译器初始化的过程,你是如何理解的? 6 面试题7:父类的构造函数中调用虚函数,能发生多态吗? c++编译器多态实现原理 6 面试题8:为什么要定义虚析构函数? 6 其他 6 4.3多态...

    C++的概念/解释,可打印,华南师范大学C++考过。

    如何初始化静态常量数据成员? 12 53. 什么是this指针?为什么要有this指针? 12 54. 复制构造函数的参数为什么一定要用引用传递,而不能用值传递? 12 55. 构造函数为什么要有初始化列表? 12 56. 如何区分++和--的...

    谭浩强C语言程序设计,C++程序设计,严蔚敏数据结构,高一凡数据结构算法分析与实现.rar

    5.5.1 字符数组的定义和初始化 5.5.2 字符数组的赋值与引用 5.5.3 字符串和字符串结束标志 5.5.4 字符数组的输入输出 5.5.5 字符串处理函数 5.5.6 字符数组应用举例 *5.6 C++处理字符串的方法——字符串类与字符串...

    C++ Primer中文版(第5版)李普曼 等著 pdf 1/3

     13.6.3 右值引用和成员函数 481  小结 486  术语表 486  第14章 操作重载与类型转换 489  14.1 基本概念 490  14.2 输入和输出运算符 494  14.2.1 重载输出运算符  14.2.2 重载输入运算符>> 495  14.3 ...

Global site tag (gtag.js) - Google Analytics