Dragon  
Dragon
日历
<2012年3月>
26272829123
45678910
11121314151617
18192021222324
25262728293031
1234567
统计
  • 随笔 - 58
  • 文章 - 0
  • 评论 - 55
  • 引用 - 0

导航

常用链接

留言簿(3)

随笔分类(58)

随笔档案(58)

搜索

  •  

最新评论

阅读排行榜

评论排行榜

 
/*
 *测试成员函数指针数组的小程序
 
*/

#include 
<iostream>
using namespace std;

class Test
{
public:
    Test();
    
~Test();

private:
    
void add5(){ res+=5;}
    
void add6(){ res+=6;}

    
void (Test::*add[2])();//这个2至关重要,在VC下没写会报错,但在QT里没报,但析构时出错!
public:
    
void DoAddAction();
    
void Display();
private:
    
int res;
}
;


Test::Test()
{
    add[
0]=&Test::add5;//注意这里的写法
    add[1]=&Test::add6;
    res
=0;
}


Test::
~Test()
{

}


void Test::DoAddAction()
{
    
for (int i=0;i<2;i++)
    
{
        (
this->*add[i])();//使用类成员函数指针必须有“->*”或“.*”的调用
    }

}


void Test::Display()
{
    cout
<<"The res is:"<<res<<endl;
}


int main()
{
    Test 
* test=new Test();
    test
->DoAddAction();
    test
->Display();
    delete test;
    
return 0;
}
posted on 2010-12-02 11:04 Dragon 阅读(1595) 评论(1)  编辑 收藏 引用 所属分类: C++
评论:
  • # re: 成员函数指针数组  hjs_wcl Posted @ 2011-09-19 18:39
    不错!从c转到c++就是纠结!好多的东西变了啊!  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


 
Copyright © Dragon Powered by: 博客园 模板提供:沪江博客