⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 类中的static成员.txt

📁 里面的代码是自己写的,参考书是thingking in c++,代码有详细的说明,对学习c++语法非常有帮助!
💻 TXT
字号:
/* 本程序选自thinking in c++ p426
*  本程序在与说明类中静态数据成员,静态数组成员的使用方法
*
*/
class X {
	int m_i;
public:
	X( int ii ) : m_i(ii){}
};

class V {
	static const int scSize = 100;
	static const long scLong = 100;
	static const char scChar = 'c';

	static const int scInts[];
	static const float scFloats[];
	static const char  scChars[6]; //在这里[]里面的数字可以有也可以没有。

	static int size;
	static float table[];
	static char letters[];
	static double doub;

	//静态类成员对象
	static X x1;
	static const X x2;
	static X x3[];
	static X x4[2];
	static const X x5[];
	static const X x6[3];
};

//不能在类外再用关键字static 如果定义为:static const int V::scSize;则编译器报两处错误
//error C2734: “V::scSize” : 如果不是外部的,则必须初始化常数对象
//error C2720: “V::scSize” : 成员上的“V::”存储类说明符非法
//这里不能再次初始化,既如果const char V::scChar = 'c': error C2374: “scChar” : 重定义;多次初始化
const int V::scSize; 
const long V::scLong;
const char V::scChar; 
           
//[]里面既可以有正整数,也可以没有。
const int V::scInts[] = {1,2,3,4,5,6,7,8};
const float V::scFloats[] = {1.1,1.2,1.3,1.4,1.5,1.6,1.7};
const char  V::scChars[] = {'c','b','a','h'}; //[]里可以省略,但是如果有必须要和类中的数字相同

int V::size = 10;
float V::table[] = {1.1,1.2,1.3};
char V::letters[] = {'c','d'};
double V::doub = 3.45678;

//静态类对象的定义
X V::x1(10);
const X V::x2(11);                //const 不要忘记
X V::x3[3] = { X(1),X(2),X(3)};
X V::x4[2] = { X(1),X(2)};
const  X V::x5[] ={X(3)};
const X V::x6[3] = {X(4),X(2),X(1)};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -