我在某个地方看到了一些代码和定义,比如
class A {
public:
int a,b;
};
main() {
A a;
std::cout<<"Test output "<<&A::a<<" "<<&A::b<<std::endl;
}
Output
1 1
我不明白的是a和b不是A的静态成员,但是当它们像静态成员一样访问时会出错,但是当像静态成员一样访问它的地址时会打印1。它背后是否有特殊含义,因为我不知道为什么需要它以及为什么它会以这种方式工作。谢谢。