65,208
社区成员
发帖
与我相关
我的任务
分享
#include <cstddef>
#include <cstdio>
#include <iostream>
using namespace std;
class TestSS;
class TestStaticMember {
public:
static TestSS* ssptr;
};
TestSS* TestStaticMember::ssptr = NULL;
class TestSS{
private:
int version;
public:
TestSS(){
version = 1;
cout << "TestSS constructor..." << endl;
}
~TestSS(){
cout << "TestSS deconstrcutor..." << endl;
//delete version;
}
void setVersion(const int ver){
version = ver;
}
int getVersion() const {
return version;
}
};
void init(){
TestSS ss;
TestStaticMember::ssptr = &ss;
ss.setVersion(111);
printf("In init: %p, %p\n", &ss, TestStaticMember::ssptr);
cout << "In init: " << TestStaticMember::ssptr->getVersion() << endl;
}
int main(int argc, char** argv){
init();
printf("In main: %p\n", TestStaticMember::ssptr);
cout << "In main: " << TestStaticMember::ssptr->getVersion() << endl;
return 0;
}