1、常数据成员
在利用构造函数对常数据成员进行赋值时 , 必须有‘:’在构造函数的后面进行单独复制
注意空构造函数 , 也需要对常数据成员进行赋值
#include <iostream>
#include <stdio.h>
using namespace std;
class point
{
public:
point():z(0) {}
point(int a , int b , int c);
int get() {return z;}
private:
int x , y;
const int z;
};
point::point(int a , int b , int c):z(c)
{
x = a;
y = b;
}
int main()
{
point x(1 , 2 , 3);
cout<<x.get()<<endl;
return 0;
}
2、静态数据成员、静态常数据成员
静态数据成员必须在定义之后立即初始化 , 静态数据成员不属于任何对象,所以其初始化不能有构造函数来实现,只能通过域限定符在类外实现。
#include <iostream>
#include <stdio.h>
using namespace std;
class point
{
public:
point() {}
private:
static int x;
static const int y;
};
int point::x = 2;
const int point::y = 3;
int main()
{
return 0;
}