要定義
vector<string> Snames(4);
Snames[0]="Spring"
Snames[1]="Summer"
Snames[2]="Fall"
Snames[3]="Winter"
想不出來怎樣把它定義成全域的靜態變數,求大神!!
uj5u.com熱心網友回復:
static std::vector<String>sn(4);
// ---------------------------------------------------------------------------
__fastcall TForm20::TForm20(TComponent* Owner)
: TForm(Owner)
{
}
// ---------------------------------------------------------------------------
void __fastcall TForm20::FormCreate(TObject *Sender)
{
sn[0] = "Spring";
sn[1] = "Summer";
sn[2] = "Fall";
sn[3] = "Winter";
Caption = sn.size();
Caption = sn[1];
Caption = sn.capacity();
}
這樣有用嗎
uj5u.com熱心網友回復:
先定義一個全域的靜態變數:vector<string> Snames(4);
然后初始化:
void sysInit(void)
{
Snames[0]="Spring";
Snames[1]="Summer";
Snames[2]="Fall";
Snames[3]="Winter";
}
void sysEnd(void)
{
Snames.clear();
}
#pragma startup sysInit //startup :全域變數初始化后,執行該函式。
#pragma exit sysEnd //exit : 系統退出前執行該函式,然后才執行全域變數析構。
C++ 用這種方式實作初始化段。允許有多處的#pragma startup,但多處時,執行次序由編譯器控制。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/118597.html
標籤:基礎類
