指向类模板实例的成员函数的指针

llwwwww 2005-10-14 03:25:11
这个东西能编译过:

bool (vector<int>::*ffffffff)()=0;

谁能解释一下那vector<int>::*ffffffff是什么意思?
特别是::操作符


原文来自c++ primer第三版 中文版 672页
倒数第二段代码就有
那里是:
// 指向Queue实例的成员函数的指针
bool (Queue<double>::*pmf)() = 0;
...全文
119 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
fangrk 2005-10-14
  • 打赏
  • 举报
回复
用法:

#include <iostream>
using namespace std;

class TEST
{
public:
TEST(int k){i=k;}
int Value() const{return i;}
void Value(int k){i=k;}
private:
int i;
};

int main()
{
typedef int (TEST::*p1)() const;
typedef void (TEST::*p2)(int);
p1 ptr1= &TEST::Value;
p2 ptr2= &TEST::Value;
TEST T1(123);
TEST* T1Ptr=& T1;
cout<<(T1.*ptr1)()<<'\n';
(T1Ptr->*ptr2)(456);
cout<<(T1Ptr->*ptr1)()<<'\n';
}
oyljerry 2005-10-14
  • 打赏
  • 举报
回复
http://www.withub-accp.com/xxyuandi/C++zhizhen.doc
oyljerry 2005-10-14
  • 打赏
  • 举报
回复
vector<int>的成员函数指针
llwwwww 2005-10-14
  • 打赏
  • 举报
回复
那这个东西怎么用?
能给个例子么
qhfu 2005-10-14
  • 打赏
  • 举报
回复
pmf
是一个指向class (Queue<double>)成员函数的指针。
:: 是域操作符。Queue<double>::表示这个指针指向Queue<double>类的成员。

64,648

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧