我的應用程序需要管理一些unicode字符串(< 10)。這些字符串的內容是動態的,可以通過應用程序運行來更改。存儲字符串我使用UnicodeString類型的對象。UnicodeString存儲類型
一種方法來解決這個問題是因爲有Unicode字符串例如像創造儘可能多的成員變量:
UnicodeString str1;
UnicodeString str2;
...
UnicodeString strN;
該解決方案是非常簡單的,至少乍一看。但是可擴展性存在問題。如果將來字符串的數量會增加,那麼我們可能會冒着難以閱讀的bigg代碼的風險。所以我創建吼聲像這樣管理弦:
std::map<HWND, UnicodeString> file_names; ///< member variable of form TForm1
每串有一些編輯框連接。我可以使用窗口句柄作爲字典的關鍵字。
我不明白 - 在這種情況下,誰應該負責分配和釋放用於存儲unicode字符串的空間?比方說,我創建的本地組的UnicodeString變量:
void TForm1::ProcessFile(TEdit *edit_box)
{
UnicodeString str = "C:\\Temp\\ws.gdb";
file_name[edit_box->Handle] = str;
}
將海峽變量的內容生存的成員函數ProcessFile結束?