C++常数据成员和静态常数据成员的初始化

#include <iostream>
using namespace std;

class A {
public:
    A(int i);
    void print();
private:
    const int a;
    static const int b; 
};

//静态常数据成员在类外说明和初始化
const int A::b = 10;    

//常数据成员只能通过初始化列表来获得初值
A::A(int i) : a(i) { }

void A::print() {
    cout << a << ":" << b << endl;
}
int main() {

    A a1(10), a2(20);  
    a1.print();
    a2.print();
    return 0;
}

 

posted on 2020-03-14 18:03  ~明月几时有  阅读(947)  评论(0)    收藏  举报