PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
C_and_CPP
[問題] header file 的命名與引用
作者:
forb9823018
(風過無痕)
2017-04-23 01:10:30
開發平台(Platform): (Ex: Win10, Linux, ...) Android
編譯器:GCC
問題(Question):
想請問一下
header file 如果不照慣例命名 使用ifdef 時後面的
參數怎麼知道是變數名字還是檔名?
所以檔名是有可能跟變數名稱撞名報錯?
作者:
LPH66
(-6.2598534e+18f)
2017-04-23 02:50:00
對編譯器來說, header guard 的名字只是另一個巨集名字而已所以只要不要跟你的程式裡的所有變數/巨集等等名字撞名就好一旦撞名, 因為那個巨集定義是把它代換成空字串撞名的那個名字就會不見那不見之後會報什麼錯就不一定了這也就是你前一個問題在問的會有人故意加 INCLUDED 的原因因為那個名字就夠長到出現在程式裡面的機率非常小再來, header guard 之所以會寫檔名的原因是為了明確指出這是用在對誰的 guard 這樣而已, 總不能寫這個但影響別人吧最後, 所有以上的麻煩都可以用 #pragma once 取代
作者:
steve1012
(steve)
2017-04-23 08:03:00
能用pragma once 就用 不要自找麻煩
作者:
forb9823018
(風過無痕)
2017-05-01 17:18:00
3Q 因為在android 平台trace code看別人code的時候不確定有沒有定義
繼續閱讀
[問題] 關於func的引數仍然是func 該怎麼稱呼?
EngRookie
[問題] C++ 大數引用變數問題
Canon5D4
[問題] C程式設計藝術 版本求問
Fan383
Re: [問題] 一個檢查array內容的功能
waterdisney
[問題] Leetcode 448 Runtime error (已解決)
sirusi
[問題] 想要將參數定義在class同時當array長度
ofd168
[問題] range for with multidimensional arrays
woody3724
[問題] CUDA 使用stream後的thread block分配
v00623
[問題] 一個檢查array內容的功能
Zoxge
[問題] 關於想計算出結構成員的offset
EngRookie
Links
booklink
Contact Us: admin [ a t ] ucptt.com