Re: [問題] 關於純c的程式重構

看板C_and_CPP (C/C++)作者 (我要加入劍道社!)時間14年前 (2011/11/11 17:03), 編輯推噓3(300)
留言3則, 3人參與, 最新討論串3/3 (看更多)
※ 引述《iamstudent (stu)》之銘言: : 首先 : A.c與B.c有一些完全相同的函數名稱 : 但是工作內容完全不同 : 因為沒有宣告在A.h : 這一點讓B.c編譯時只會呼叫到自己的函數 : 而不會呼叫到A.c的同名函數 沒道理 這樣會產生 link error : 這讓我在想 : c沒有private或是public的功能 : 是否能夠利用把函數藏進c檔 : 而達到private的觀念? : 這樣想是對的嗎? 用 static function : 但是如果A.c所include的檔案裡面 : 遇到跟自己函數同樣名稱的時候 : 麻煩就出現了吧 : c沒有namespace : 那麼函數的命名是否都要非常小心 : 而無法使用簡短名稱就好? : 還是說實際上有什麼比較安全的設計原則? 沒有簡單的方法 要用又臭又長的名稱 通常都是在函式前面加上一些prefix : ------------------------------------------------------ : 第二個問題是 : B.c並不會被別人include : 本身就有程式進入點 : (但不是main也不是win main,因為是plugin程式,名稱也非常不顯眼) : 目前來看 : 只會有B.c會去include B.h : 那麼,提出head檔B.h,是否是多餘的? : head檔應該是給別人使用的介面 : 但是能否只純粹為了增加可讀性而存在? 如果你需要 B.c 的文件 請使用 doxygen 之類的工具來幫你產生 .h 的設計根本就是舊時代的產物 如果沒有外部引用的需求就不需要 .h 了 要看內部函式的原形,用 doxygen 產生出來的文件會更方便 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.3.139

11/11 17:14, , 1F
我都不知道有 doxygen 這東西,document 還 key 半天.推
11/11 17:14, 1F

11/11 17:24, , 2F
我自己是很習慣使用doxygen的,只是我也習慣有head檔
11/11 17:24, 2F

11/11 22:20, , 3F
doxygen 很好用的 XD
11/11 22:20, 3F
文章代碼(AID): #1ElEJlcw (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1ElEJlcw (C_and_CPP)