1.分配内存,调用构造函数时,隐式或者显示的初始化个数据成员。
2.进入构造函数后,在构造函数中执行一般计算。
3.类里面的任何成员变量在定义时是不能初始化的。
4.static 要在类的定义外面初始化。
5.数组成员是不能在初始化列表里初始化的。
6.不能给数组指定明显的初始化。
#pragma once
class base
{
public:
base(int num3 = 4):m_num3(num3)
{
m_num1 = 0;
};
~base() {};
int getnum1()const { return m_num1; };
int getnum2()const { return m_num2; };
int getnum3()const { return m_num3; };
private:
int m_num1;
static int m_num2;
int m_num3;
};
#include <iostream>
#include"base.h"
int base::m_num2 = 2;
int main()
{
std::cout << "Hello World!\n";
base* myBase = new base();
int num1 = myBase->getnum1();
int num2 = myBase->getnum2();
int num3 = myBase->getnum3();
std::cout << num1 << std::endl;
std::cout << num2 << std::endl;
std::cout << num3 << std::endl;
}