Cpper
C/C++高級(jí)工程師 Android高級(jí)軟件工程師 IT集成工程師 音頻工程師 熟悉c,c++,java,c#,py,js,asp等多種語(yǔ)言 程序猿
導(dǎo)航
C++博客
首頁(yè)
新隨筆
聯(lián)系
聚合
管理
<
2010年8月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
統(tǒng)計(jì)
隨筆 - 379
文章 - 2
評(píng)論 - 439
引用 - 0
常用鏈接
我的隨筆
我的評(píng)論
我參與的隨筆
留言簿
(26)
給我留言
查看公開留言
查看私人留言
隨筆分類
(335)
aspx/js
(rss)
boost庫(kù)等(9)
(rss)
Cef(2)
(rss)
Cef/Chrome(1)
(rss)
Game引擎(82)
(rss)
JAVA(1)
(rss)
Java Antroid(10)
(rss)
OpenGL/DX(1)
(rss)
Python腳本(7)
(rss)
QT編程(149)
(rss)
QT源碼分析(2)
(rss)
UML
(rss)
編程基礎(chǔ)(12)
(rss)
軟件調(diào)試(1)
(rss)
軟件工程(5)
(rss)
設(shè)計(jì)模式(7)
(rss)
數(shù)學(xué)建模(1)
(rss)
網(wǎng)頁(yè)搜素(2)
(rss)
音頻視頻(17)
(rss)
雜項(xiàng)(26)
(rss)
隨筆檔案
(379)
2019年9月 (20)
2019年8月 (20)
2019年6月 (1)
2019年3月 (1)
2018年6月 (1)
2017年9月 (5)
2017年5月 (2)
2017年4月 (2)
2017年3月 (4)
2016年10月 (3)
2016年8月 (1)
2016年6月 (1)
2016年5月 (1)
2016年4月 (6)
2016年3月 (2)
2016年2月 (2)
2016年1月 (4)
2015年12月 (5)
2015年11月 (3)
2015年10月 (2)
2015年8月 (12)
2015年7月 (2)
2015年6月 (1)
2015年1月 (1)
2014年12月 (4)
2014年11月 (2)
2014年6月 (1)
2014年4月 (1)
2014年3月 (1)
2013年12月 (2)
2013年11月 (1)
2013年10月 (3)
2013年9月 (1)
2013年8月 (2)
2013年7月 (2)
2013年6月 (3)
2013年4月 (1)
2013年2月 (4)
2013年1月 (9)
2012年12月 (3)
2012年11月 (1)
2012年10月 (2)
2012年9月 (2)
2012年8月 (2)
2012年7月 (2)
2012年6月 (3)
2012年5月 (7)
2012年4月 (4)
2012年3月 (4)
2012年1月 (2)
2011年12月 (8)
2011年11月 (13)
2011年9月 (6)
2011年8月 (10)
2011年7月 (1)
2011年6月 (4)
2011年5月 (12)
2011年4月 (4)
2011年3月 (19)
2011年1月 (1)
2010年12月 (3)
2010年11月 (2)
2010年10月 (4)
2010年9月 (6)
2010年8月 (11)
2010年7月 (4)
2010年6月 (11)
2010年5月 (15)
2010年4月 (28)
2010年3月 (23)
2010年2月 (23)
文章檔案
(2)
2014年3月 (1)
2011年5月 (1)
XYZ
codeproject.com
lua
ode
蝸牛選股
程序員
華佗中醫(yī)大師
積分與排名
積分 - 778338
排名 - 19
最新隨筆
1.?QML 單張圖片顯示翻轉(zhuǎn)效果
2.?QML 圖片翻轉(zhuǎn)動(dòng)畫
3.?ffmpeg av_seek_frame
4.?QML StackLayout
5.?QML Canvas旋轉(zhuǎn)和平移
6.?QML透明度動(dòng)畫
7.?QML不響應(yīng)下層右鍵菜單
8.?QML 右鍵菜單
9.?QML 菜單項(xiàng)
10.?QML 環(huán)形進(jìn)度條
最新評(píng)論
1.?re: QT學(xué)習(xí)筆記-35:QTableWidget動(dòng)態(tài)增加行的方法
寫的真好
--垃圾袋
2.?re: Qt筆記:106 - QT 一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)查詢軟件
簡(jiǎn)單的數(shù)據(jù)庫(kù)查詢軟件 Mark
--linda
3.?re: BGE GUI升級(jí)
小弟也準(zhǔn)備開發(fā)gui庫(kù),可以苦于沒有例子,希望給封源碼學(xué)習(xí)學(xué)習(xí)。
better@geekzhou.uu.me
--zhouxiang
4.?re: 發(fā)布一個(gè)基于OPENGL的GUI庫(kù)
better@geekzhou.uu.me
求一份代碼,也再做同樣事,不過到現(xiàn)在都沒思議,主要沒學(xué)過opengl。csdn要積分,沒積分。
--zhouxiang
5.?re: Qt筆記:100 - QTableWidget列排序
QT的原理 MARK下
--linda
閱讀排行榜
1.?c++小問題has no member named ''XXX‘(25211)
2.?c++軟件開發(fā)第三方庫(kù)大全(19596)
3.?QT學(xué)習(xí)筆記-29.使用QT HTTP下載網(wǎng)絡(luò)文件(13032)
4.?gcc之declaration does not declare anything解決方案(11973)
5.?QT學(xué)習(xí)筆記-35:QTableWidget動(dòng)態(tài)增加行的方法(11831)
評(píng)論排行榜
1.?蓋莫游戲引擎-插件系統(tǒng)(17)
2.?loki技法(1).靜態(tài)斷言(13)
3.?loki技法(2).CheckReturn(12)
4.?vc6使用rapidxml(12)
5.?c++軟件開發(fā)第三方庫(kù)大全(12)
c++中使用成員函數(shù)作為函數(shù)參數(shù)的方法
今天由于要寫一些東西,遇到了需要把成員函數(shù)作為函數(shù)參數(shù)的問題
總結(jié)有以下幾個(gè)辦法:
1.使用類的靜態(tài)成員:
最簡(jiǎn)單的.只是這種辦法與使用普通函數(shù)沒有什么區(qū)別
2.模板的方法
1
template
<
class
T
>
2
void
Call(T
*
ptr,
void
(T::
*
MenFn)())
3
{
4
(ptr
->*
MenFn)();
5
}
1
class
MyClass
2
{
3
public
:
4
void
Call()
5
{
6
7
}
8
};
9
10
MyClass cs;
11
Call(
&
cs,
&
MyCall::Call);
3. 虛擬繼承的方法
1
class
Base
2
{
3
public
:
4
virtual
void
Call()
=
0
;
5
};
6
7
class
SubClass :
public
Base
8
{
9
public
:
10
void
Call(){
}
11
};
12
13
void
Call(Base
*
ptr)
14
{
15
ptr
->
Call();
16
}
4.use boost.
1
#include
<
boost
/
bind.hpp
>
2
#include
<
iostream
>
3
using
namespace
std;
4
struct
MyClass
5
{
6
void
Print(
const
char
*
str)
7
{
8
cout
<<
"
holle
"
<<
str
<<
endl;
9
}
10
}
;
11
12
template
<
class
_Fun
>
13
void
CallBackFun(_Fun a,
const
char
*
str)
14
{
15
t(n);
16
}
17
18
int
main()
19
{
20
MyClass mc;
21
CallBackFun(boost::bind(boost::mem_fn(
&
MyClass::Print),
&
mc,_1),
"
world
"
)
22
return
1
;
23
}
24
5.使用靜態(tài)成員函數(shù)或者聯(lián)合體模擬之
1
union
2
{
3
void
(G_CALL ParticleSystem::
*
PhysicsThreadFun)(
void
*
arg);
4
ThreadFun f;
5
}fn;
6
fn.PhysicsThreadFun
=
&
ParticleSystem::PhysicsThreadFun;
7
thread_id
=
CreateThread(fn.f,
&
ps);
6.也許.
對(duì)loki庫(kù)不太熟悉也許上面也有答案吧
posted on 2010-02-23 19:08
ccsdu2009
閱讀(6462)
評(píng)論(6)
編輯
收藏
引用
Comments
#
re: c++中使用成員函數(shù)作為函數(shù)參數(shù)的方法
sanit
Posted @ 2010-02-23 22:38
第二種方法11行,Call(&cs,&MyCall::Call);
應(yīng)該是&MyClass::Call吧?
回復(fù)
更多評(píng)論
#
re: c++中使用成員函數(shù)作為函數(shù)參數(shù)的方法
ccsdu2009
Posted @ 2010-02-24 08:27
@sanit
沒問題的
回復(fù)
更多評(píng)論
#
re: c++中使用成員函數(shù)作為函數(shù)參數(shù)的方法
XYFOR1234
Posted @ 2010-02-24 10:30
函數(shù)指針不行嗎?是不是因?yàn)門HIS指針的關(guān)系有一個(gè)偏移量?這也好解決,不過是編譯器相關(guān)的。
回復(fù)
更多評(píng)論
#
re: c++中使用成員函數(shù)作為函數(shù)參數(shù)的方法
zuhd
Posted @ 2010-02-24 13:23
void Call(Base *ptr)
{
ptr->Call();
}
直接這樣傳函數(shù)指針不就可以了嗎?為什么要求是虛擬繼承啊,普通的函數(shù)指針不行嗎?
回復(fù)
更多評(píng)論
#
re: c++中使用成員函數(shù)作為函數(shù)參數(shù)的方法
永遠(yuǎn)在一起
Posted @ 2010-12-15 22:14
謝謝,學(xué)習(xí)了,不過最后一種不怎么明白
回復(fù)
更多評(píng)論
#
re: c++中使用成員函數(shù)作為函數(shù)參數(shù)的方法
porphyah
Posted @ 2014-10-25 00:14
如果Lambda表達(dá)式能與函數(shù)指針相互轉(zhuǎn)化,那就能像C#一樣輕輕松松寫個(gè)臨時(shí)的匿名函數(shù)了
回復(fù)
更多評(píng)論
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
【推薦】100%開源!大型工業(yè)跨平臺(tái)軟件C++源碼提供,建模,組態(tài)!
網(wǎng)站導(dǎo)航:
博客園
IT新聞
BlogJava
博問
Chat2DB
管理
Powered by:
C++博客
Copyright © ccsdu2009
久久久亚洲裙底偷窥综合
|
av无码久久久久久不卡网站
|
爱做久久久久久
|
久久不射电影网
|
老司机午夜网站国内精品久久久久久久久
|
亚洲午夜久久久久久噜噜噜
|
久久Av无码精品人妻系列
|
久久99国产精品久久99
|
久久午夜免费视频
|
大伊人青草狠狠久久
|
国产成人综合久久精品红
|
久久国产乱子伦精品免费强
|
久久笫一福利免费导航
|
久久免费精品一区二区
|
久久婷婷五月综合色奶水99啪
|
久久97精品久久久久久久不卡
|
亚洲精品乱码久久久久久不卡
|
色婷婷综合久久久久中文
|
伊人久久国产免费观看视频
|
久久91精品国产91久久户
|
久久人爽人人爽人人片AV
|
久久婷婷五月综合成人D啪
|
久久精品视屏
|
狠狠精品久久久无码中文字幕
|
97久久精品人妻人人搡人人玩
|
亚洲日本va午夜中文字幕久久
|
久久高潮一级毛片免费
|
国产精品久久国产精麻豆99网站
|
久久婷婷五月综合97色一本一本
|
欧美麻豆久久久久久中文
|
精品国产青草久久久久福利
|
国产精品99久久免费观看
|
久久精品国产99久久久
|
亚洲精品第一综合99久久
|
国产精品久久久久久久app
|
人妻系列无码专区久久五月天
|
久久人人爽人人爽人人片AV东京热
|
日本精品久久久中文字幕
|
亚洲国产成人久久精品影视
|
久久精品国内一区二区三区
|
久久久久久久综合日本亚洲
|