пожалуйста посмотрите правильно но ли создан двухфазный конструктор и правильно ли используется функция CleanupStack в функции TestL()
Code:class CTest : public CBase { TInt* iI; public: static CTest* NewL() { CTest* self = CTest::NewLC(); CleanupStack::Pop(self); return self; } static CTest* NewLC() { CTest* self = new (ELeave) CTest; CleanupStack::PushL(self); self->ConstructL(); return self; } void ConstructL() { iI = new (ELeave) TInt; } virtual ~CTest() { delete iI; } }; void TestL() { CTest* A = CTest::NewL(); CleanupStack::PushL(A); console->Getch(); CleanupStack::PopAndDestroy(A); } // Local Functions LOCAL_C void MainL() { // // add your program code here, example code below // TestL(); }

Reply With Quote



