Re: [問題] 同時使用兩個函數庫
※ 引述《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
討論串 (同標題文章)