導航:首頁 > 源碼編譯 > const欄位的值是在編譯時確定的

const欄位的值是在編譯時確定的

發布時間:2024-06-20 12:41:14

A. Linux centos7使用make編譯時報錯,提示C文件初始值設定元素不是常量,請問應該怎麼解決

static const 初始化值必須為常量,就是只能是編譯時就能確定的值,而不是運行時運算出來的值.

得看看makefloatx80是什麼,如果是一個普通函數,那麼出現這個錯誤是應該的.

考慮到是官方庫,可能是使用的編譯器版本不同.

B. visual studio 如何在編譯期確定字串長度,特殊宏之類的

宏的作用,只是在編譯期間完成替代,並不能實現計算。因此不要考慮宏實現,這個沒什麼可行性。

編譯期間數羨胡槐值確定,其實可以通過const關鍵字實現,但說實話,這個是「消耗空間換時間」,如果有log的函數太多,太分散,並不值得。

如果log比較集中的在幾個函數中,那麼可以這么做:

constintfnamelen=strlen(__FUNCTION_);
log(__FUNCTION_,fanmelen);
這樣,因為編譯之後__FUNCTION_是一個常量,const 變數會直接從編譯器的符號表中取值(做爛這個叫C++的常量折疊),不會兄友反復計算。


閱讀全文

與const欄位的值是在編譯時確定的相關的資料

熱點內容
不知道密碼怎麼強制解壓 瀏覽:179
疫情就是命令防控就是 瀏覽:868
linux查看存儲設備 瀏覽:241
stc1t單片機 瀏覽:313
英華特渦旋壓縮機 瀏覽:4
編解碼器的輸入輸出干擾 瀏覽:542
往復式壓縮氣缸過熱的原因 瀏覽:839
4u伺服器機箱怎麼賣 瀏覽:461
如何自學葡萄牙語app 瀏覽:456
擺來擺去的游戲解壓 瀏覽:270
centos注銷命令 瀏覽:859
vue多端編譯 瀏覽:755
程序員qq表白代碼編輯 瀏覽:893
聯想伺服器怎麼進後台 瀏覽:116
安卓定製rom怎麼刷 瀏覽:539
三層交換機的配置命令 瀏覽:111
49演算法公式 瀏覽:791
求最小生成樹演算法代碼及運行圖片 瀏覽:931
python掃雷計數 瀏覽:880
什麼安卓手機品牌最保值 瀏覽:847