看板 C_and_CPP 關於我們 聯絡資訊
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 遇到的問題: (題意請描述清楚) 最近看到一個人寫的程式他把所有class跟function都寫在.h檔中 然後我在include 去使用,想問這到底有啥好處?? 產生的執行檔有差吧??compiler or linker 會怎麼處理?? 有人知道嗎?感謝 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 189.1.164.4
james732:首先要知道 #include "file" 這個動作到底發生什麼事 03/06 18:06
loveme00835:如果member function寫在class body裡, 等同於建議 03/06 18:09
loveme00835:compiler把函式inline起來 03/06 18:09
final01:哪本書有教include發生了什麼事??感覺書好像都只寫怎麼用 03/06 18:23
james732:google找到的:http://0rz.tw/G3ldJ 03/06 18:31
dendrobium:是因為篇幅不多吧... 03/06 19:32
QQ29:寫在.h = inline 這件事 我google不到耶 也都是看板上這樣說 03/07 00:36
QQ29:但是之前有找一下 好像沒找到 03/07 00:36
joefaq:應該是inline應該寫在.h檔裡面 才能在呼叫點把程式碼展開 03/07 01:33
loveme00835:http://tinyurl.com/5qq8q9 03/07 02:23
mortleo:沒啥好處吧!而且封裝性不佳 03/07 03:33
tinlans:include 單純就是你用複製貼上把檔案內容貼在那個位置上。 03/07 04:42
tinlans:除此之外沒有什麼其它的意義,會偷加的東西也不需要知道。 03/07 04:43
tinlans:method 定義在 class 裡面不管你寫哪都是 inline 的意思。 03/07 04:44
kolodona:.h opensource比較方便 直接寫在主程式沒人會用 03/07 10:54
QQ29:t大你說method寫哪都inline?是包含定義在.cpp也是?? 03/07 21:13
loveme00835:class body裡, 請看十樓 QQ 03/07 21:40
willhunting:inline你必須define在裡,但其他func要注意多重define 03/08 00:14