[問題] 請問C介面跟實作分開的作法
通常一般的習慣a.c會去include a.h
a.c是實作內容 a.h是介面宣告
b.c只需要include a.h就可以使用a的function
但實際上把a.c include a.h的內容拿掉
編譯過程link也不會發生問題(雖然這樣看起來a.c跟a.h就沒有直接關連)
當然如果a.h內還有定義一些struct或常數會被a.c用到
include a.h就是必須的
不過在不考慮上述的情況下
是否a.c要不要去include a.h只剩下coding習慣的問題?
編譯過程上沒有任何差別?
第二個問題是
去include一個.c檔是絕對必須避免的嗎?
有甚麼情況下是必須要這樣做?(因為有看到有人這樣寫 但覺得不太合常理)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.233.122
※ 文章網址: https://www.ptt.cc/bbs/Programming/M.1524837932.A.98F.html
※ DIE755127:轉錄至看板 C_and_CPP 04/27 22:10
推
04/29 01:17,
6年前
, 1F
04/29 01:17, 1F
→
04/29 01:18,
6年前
, 2F
04/29 01:18, 2F
→
05/10 17:26,
6年前
, 3F
05/10 17:26, 3F
→
05/10 17:26,
6年前
, 4F
05/10 17:26, 4F
推
05/30 18:07,
6年前
, 5F
05/30 18:07, 5F
→
05/30 18:08,
6年前
, 6F
05/30 18:08, 6F
→
05/30 18:08,
6年前
, 7F
05/30 18:08, 7F
推
05/30 18:11,
6年前
, 8F
05/30 18:11, 8F
→
05/30 18:11,
6年前
, 9F
05/30 18:11, 9F
Programming 近期熱門文章
PTT數位生活區 即時熱門文章