[問題] 如何include "MY_DIR\MYFILE.h"?

看板C_and_CPP作者 (我討厭)時間11年前發表 (2014/07/08 16:46), 11年前編輯推噓2(207)
留言9則, 6人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Linux GCC "C" 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) NO 問題(Question): #define MYFILE MYFILE01 #define MYFILE MYFILE02 第一個檔案MYFILE01_kkman.h在 MY_DIR\MYFILE01\MFILE01_kkman.h 第二個檔案MYFILE02_kkman.h在 MY_DIR\MYFILE02\MFILE02_kkman.h 我要寫個MARCO include能自動判斷 include "MY_DIR\MYFILE\MYFILE_kkman.h" 補充說明(Supplement): 嘗試: #define _str(x) #x #define str(x) _str(x) #define _cat(a,b) a##b #define cat(a,b) _cat(a,b) 但是遇到"\"或是"." 都會顯示字元錯誤連結不起來 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.77.53.191 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1404837990.A.658.html
感謝了..但是似乎只能連結字串 "\" 和 "." 一樣

07/09 01:03, , 2F
有什麼原因必須這樣做嗎?
07/09 01:03, 2F
分別有N個模組 MYFILE01.MYFILE02.MYFILE03.... 只會走其中一個MYFILE 想說有沒有更快的作法 每次都要去加 #if MYFILE01_Support #include "MY_DIR\MYFILE01\MYFILE01_kkman.h" #endif #if MYFILE02_Support #include "MY_DIR\MYFILE02\MYFILE02_kkman.h" #endif . . . 想要用MARCO一勞永逸 ※ 編輯: IhateOGC (203.77.53.191), 07/09/2014 01:14:20

07/09 01:23, , 3F
1. 用 python 2. make file 裡定義 include path
07/09 01:23, 3F

07/09 01:24, , 4F
3. 每個 module 用 struct 封裝成 interface
07/09 01:24, 4F

07/09 01:24, , 5F
賦予 ID 註冊
07/09 01:24, 5F

07/09 06:48, , 6F
1. 改用 namespace 2. 把判斷丟到一個共用的 header 裡
07/09 06:48, 6F

07/09 09:21, , 7F
不考慮用 "/" 嗎
07/09 09:21, 7F

07/09 16:06, , 8F
用boost processor看看
07/09 16:06, 8F

07/09 19:04, , 9F
@@!! 感謝大大!! ※ 編輯: IhateOGC (203.77.53.191), 07/09/2014 22:58:35
文章代碼(AID): #1Jl21cPO (C_and_CPP)