第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

靜態(tài)類成員上的未解析外部符號(hào)

靜態(tài)類成員上的未解析外部符號(hào)

C++
喵喵時(shí)光機(jī) 2019-06-26 17:13:50
靜態(tài)類成員上的未解析外部符號(hào)簡(jiǎn)單地說:我有一個(gè)類,主要由靜態(tài)的公共成員組成,所以我可以將類似的函數(shù)組合在一起,這些函數(shù)仍然需要從其他類/函數(shù)中調(diào)用。無(wú)論如何,我已經(jīng)在類公共范圍中定義了兩個(gè)靜態(tài)的無(wú)符號(hào)字符變量,當(dāng)我試圖在同一個(gè)類的構(gòu)造函數(shù)中修改這些值時(shí),在編譯時(shí)會(huì)得到一個(gè)“未解決的外部符號(hào)”錯(cuò)誤。class test  {public:     static unsigned char X;     static unsigned char Y;     ...     test();};test::test() {     X = 1;     Y = 2;}我對(duì)C+不太熟悉,所以對(duì)我放松點(diǎn)。為什么我不能這么做?
查看完整描述

3 回答

?
浮云間

TA貢獻(xiàn)1829條經(jīng)驗(yàn) 獲得超4個(gè)贊

類聲明中的靜態(tài)數(shù)據(jù)成員聲明不是它們的定義。要定義它們,您應(yīng)該在.CPP文件以避免重復(fù)符號(hào)。

唯一可以聲明和定義的數(shù)據(jù)是積分靜態(tài)常量。(價(jià)值)enums也可以用作常量值)

您可能希望將代碼重寫為:

class test {public:
  const static unsigned char X = 1;
  const static unsigned char Y = 2;
  ...
  test();};test::test() {}

如果您想要修改靜態(tài)變量(換句話說,當(dāng)將它們聲明為Const不合適時(shí)),可以在.H.CPP以下列方式:

.h:

class test {public:

  static unsigned char X;
  static unsigned char Y;

  ...

  test();};

.CPP:

unsigned char test::X = 1;unsigned char test::Y = 2;test::test(){
  // constructor is empty.
  // We don't initialize static data member here, 
  // because static data initialization will happen on every constructor call.}


查看完整回答
反對(duì) 回復(fù) 2019-06-26
?
qq_花開花謝_0

TA貢獻(xiàn)1835條經(jīng)驗(yàn) 獲得超7個(gè)贊

由于這是第一個(gè)在搜索“靜態(tài)Const成員的未解決外部性”時(shí)出現(xiàn)的SO線程,因此我將在這里留下另一個(gè)提示來(lái)解決一個(gè)未解決的外部問題:

對(duì)我來(lái)說,我忘記的是標(biāo)記我的類定義__declspec(dllexport),當(dāng)從另一個(gè)類(在該類的DLL邊界之外)調(diào)用時(shí),我當(dāng)然得到了未解決的外部錯(cuò)誤。
但是,當(dāng)您將內(nèi)部助手類更改為從其他地方訪問的類時(shí),很容易忘記,因此,如果您在動(dòng)態(tài)鏈接的項(xiàng)目中工作,您最好也檢查一下。


查看完整回答
反對(duì) 回復(fù) 2019-06-26
  • 3 回答
  • 0 關(guān)注
  • 500 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)