class St {
public:
St(): NS_ALLOW_THIS_IN_INITIALIZER_LIST(factory_(this)) {}
void print() {
cout << "sfasfasfsad" << endl;
}
MarkedPtrFactory<St> factory_;
};
void test() {
St* obj = new St;
MarkedPtr<St> ptr(obj->factory_.getMarkdedPtr());
delete obj;
if (ptr)
cout << "Test ptr exist" << endl;
else
cout << "Test ptr not exist" << endl;
}
int main() {
test();
getchar();
}