Re: [問題] 同時使用兩個函數庫

看板C_and_CPP作者 (藍影)時間14年前 (2011/09/09 16:46), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《shihyuyao (Yao)》之銘言: : 請問如果同時使用兩個函數庫 : 假設兩個函數庫有相同函數名稱這樣情況要怎麼辦? : 謝謝 C++ 的話,用 namespace 包起來便可,這部份網路很多範例, 你可進行參考。 用 pure C 的話,這會麻煩一點,用 macro 可達到你的需求, /* filename : a.h */ #ifndef _A_ #define _A_ #define sum asum int sum(int a, int b) { return a+b;} #endif /* filename : b.h */ #ifndef _B_ #define _B_ #define sum bsum int sum(int a, int b) { return a+b+1;} #endif /* filename : main.c */ #include <stdio.h> #include "a.h" #include "b.h" int main() { printf("from a.h: %d\n", asum(1,2)); /* output 3 */ printf("from b.h: %d\n", bsum(1,2)); /* output 4 */ return 0; } 不確定有沒有可攜性問題,但於 vc / dev-c 下無誤, 缺點是,一些 IDE 對於函式之 tip 無法正常顯示。 -- YouLoveMe() ? LetItBe() : LetMeFree(); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.177.78.41
文章代碼(AID): #1EQaBxGI (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1EQaBxGI (C_and_CPP)