21xrx.com
2024-11-10 00:39:53 Sunday
登录
文章检索 我的文章 写文章
C++类成员函数指针
2023-06-27 03:37:40 深夜i     --     --
C++ 类成员函数 指针

C++类成员函数指针是指向类成员函数的指针,与普通函数指针不同,它需要特别的语法和技巧来使用。

首先,要声明一个类成员函数指针,需要在指针类型前加上类名及作用域限定符“::”,例如:


class MyClass {

public:

  int func(int arg);

};

int (MyClass::*func_ptr)(int) = &MyClass::func;

上述代码中,声明了一个名为“func_ptr”的类成员函数指针,它指向MyClass类的成员函数“func”。

接下来,要使用类成员函数指针,需要关注两点:

1. 箭头运算符“->”不能直接用于调用成员函数,需要使用“.*”或“->*”运算符。

2. 调用类成员函数时,需要先创建一个类对象,并以它为参数传递给成员函数指针。

例如:


MyClass obj;

int result = (obj.*func_ptr)(42);

上述代码中,首先创建了一个MyClass类的对象“obj”,然后用它调用了成员函数指针“func_ptr”所指向的成员函数“func”,并传入了参数42。

总之,使用C++类成员函数指针需要注意语法和技巧,但它为代码提供了更大的灵活性和可扩展性。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复