2011-10-11 96 views
0

我需要通過按按鈕來調用類的方法,但我不想每次都創建新的對象。此外,班級創建列表,所以我不想再次創建列表。哪裏聲明Visual Studio 2010中的類的構造函數winforms project C++?

+0

您的描述指向**單身**,但他們本身已經足夠糟糕,直到我們知道您正在嘗試做的細節時才被告知。 –

+0

我想用按鈕做項目。當我按下第一個按鈕 - 添加元素列表,第二 - 從列表中刪除元素。但要做到這一點,我需要初始化對象 'ArrayList * x = new ArrayList();' 但我可以做到這一點?在控制檯應用程序中,我做的主要。但是,我可以在應用程序中使用表單進行操作嗎? –

+0

在窗體類構造函數中。你的項目也有一個Main()方法,萬一你想讓它成爲一個全局變量。 –

回答

0

如果您的ArrayList將僅用於窗體類中,使其成爲類的成員,並在窗體的構造初始化:

public: 
    Form1(void) 
    { 
     InitializeComponent(); 

     myList = gcnew ArrayList(); 
    } 
protected: 
    ArrayList^ myList; 

正如康拉德指出,使用Generics優先於使用ArrayList。類似這樣的:

public: 
    Form1(void) 
    { 
     InitializeComponent(); 

     x = gcnew System::Collections::Generic::List<String^>(); 
    } 
private: 
    System::Collections::Generic::List<String^>^ x; 
+0

爲什麼你會使用'ArrayList'?我看到OP提到它,但請不要使用它,甚至不能用於演示。 –

+0

ArrayList是我自己的類 - 無指針的鏈表(帶有動態數組)。我不使用C++中的泛型,我更喜歡STL。 –

相關問題