標籤

C++ (12) Linux (6) MacOSX (4) Makefile (3) Matlab (3) Ubuntu (3) Android (2) C (1) Refactoring (1)

2011年10月27日 星期四

[C++] Forward Declaration and Definition

如果要給函式default argument或是在class 的 constructor 進入函式前就先初始化data member
都只要加在Definition的地方就好(Implementation)
不需要在forward declaration補上
如下:

class A {
public:
    A(int a = 10): _a(a) {}
private:
    int _a;
};

可以拆開成

// File: *.h

class A {
public:
    A(int a);
private:
    int _a;
};

// File: *.cpp
A::A(int a = 10): _a(a) {
    // TODO
}

沒有留言:

張貼留言