C函式介面卡

2022-02-10 07:04:37 字數 759 閱讀 8223

普通變數可以通過指標進行訪問,用起來很方便,現在我有個想法,就是玩函式也要玩的這麼炫,我想給它寫個介面卡……

這裡我主要是用可變引數和函式指標來實現,有兩個測試**片段:test1()和test2()。其中test1用的是可變引數的函式指標,test2用的是巨集實現的函式介面卡。

**如下:

1/*2

file : adapter.c

3author : mike

4e-mail : [email protected]*/

6 #include

7 #include

8 #include

9 #include

1011

#define adapter(f,...) f(__va_args__)

12 typedef int(*fun)(int a,...);

1314

int fun1(int a,int b)

15 18

19int fun2(int a,char *str)

20 23

24int fun3(int a,char *str,long l)

25 28

29void test1()

30 43

44void test2()

45 58

59int main()

60

tips : gcc和vs2010都行,vc6跑不過,用的時候注意點。

STL介面卡 函式介面卡

有時候需要對內建函式物件返回值進行進一步的簡單計算,或者填上多餘的引數,不能直接代入演算法。函式介面卡實現了這一功能,函式介面卡是將一種函式物件轉化為另一種符合要求的函式物件。函式介面卡可以分為4個大類 繫結介面卡 組合介面卡 指標函式介面卡和成員函式介面卡。需求 在遍歷容器的時候,將容器中的值全部...

C 函式介面卡

2013年08月15日 09 10 04 1519人閱讀收藏 舉報c 深入學習 151 先弄清幾個概念,什麼叫一元函式,二元函式 1.一元函式乙個引數 2.二元函式 兩個引數 3.一元謂詞 乙個引數,返回型別為bool型 4.二元謂詞 兩個引數,返回型別為bool型 函式介面卡是用來讓乙個函式物件表...

C 函式介面卡

1 考慮下面的需求,在乙個int的vector中,找出乙個比5的元素,容易想到的解決辦法,定義乙個方法物件,使用模板,如下 vector iterator iter find if intvec.begin intvec.end finder 3 2 分析 find if的偽 如下 for firs...