my_test.h
#ifndef MY_TEST
#define MY_TEST
struct obj {
int x;
int y;
};
class A {
private:
const static int a=100;
const static obj b;
};
const obj A::b={1,2};
#endif
使用此头文件编译 cpp 时,'multiple definition of 'A::b'
会出现错误。
- 为什么我已经在使用警卫宏了?
- 为什么不
A::a
产生错误?(我不能写代码const static obj b={1,2}
)class A