導航:首頁 > 源碼編譯 > 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欄位的值是在編譯時確定的相關的資料

熱點內容
javabyte寫文件 瀏覽:319
java獲取類包名 瀏覽:888
ftp命令編碼格式 瀏覽:298
程序員那麼可愛陸離穿正裝 瀏覽:169
源碼的賬號密碼在哪個文件 瀏覽:437
如何在中國農業銀行app綁定銀行卡 瀏覽:990
shopnum1多用戶商城系統源碼 瀏覽:744
紅包廣告平台源碼 瀏覽:770
硬碟格式化時用的dos命令是 瀏覽:940
找人緩解壓力 瀏覽:937
iphone的pdf 瀏覽:351
90壓縮餅干怎麼吃 瀏覽:668
php教材下載 瀏覽:915
什麼解壓密碼最好 瀏覽:590
資料庫與伺服器如何連接 瀏覽:444
架構師需要閱讀的源碼 瀏覽:483
ch編譯器 瀏覽:456
java必須自己寫一個編譯器嗎 瀏覽:944
如何製作androidrom 瀏覽:476
單片機萬能板怎麼寫入程序 瀏覽:27