中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c++成員函數指針怎么使用

c++
小億
109
2023-07-28 05:22:17
欄目: 編程語言

C++中的成員函數指針可以用于存儲和調用類的成員函數。下面是使用成員函數指針的示例:

#include <iostream>
using namespace std;
class MyClass {
public:
void func(int x) {
cout << "func: " << x << endl;
}
};
int main() {
MyClass obj;
// 定義成員函數指針
void (MyClass::*ptr)(int) = &MyClass::func;
// 使用成員函數指針調用函數
(obj.*ptr)(10);
return 0;
}

在上面的示例中,首先定義了一個名為ptr的成員函數指針,它指向MyClass類的成員函數func。然后,使用成員函數指針調用函數時,需要使用成員訪問運算符.*,并將對象obj作為第一個參數傳遞給成員函數指針。

輸出:

func: 10

請注意,成員函數指針的類型需要與目標成員函數的類型完全匹配,包括參數類型和返回類型。如果成員函數是const成員函數,則需要使用const修飾符來聲明成員函數指針。

還可以使用typedef來簡化成員函數指針的語法,如下所示:

#include <iostream>
using namespace std;
class MyClass {
public:
void func(int x) {
cout << "func: " << x << endl;
}
};
int main() {
MyClass obj;
typedef void (MyClass::*FuncPtr)(int);
FuncPtr ptr = &MyClass::func;
(obj.*ptr)(10);
return 0;
}

0
水富县| 淮南市| 灵山县| 临城县| 南康市| 靖宇县| 和龙市| 南和县| 察隅县| 马鞍山市| 定襄县| 彰化市| 丹巴县| 灵宝市| 寿光市| 平安县| 连南| 安远县| 富阳市| 泸溪县| 泸定县| 石泉县| 湟源县| 三江| 贵南县| 工布江达县| 垦利县| 宁城县| 车致| 兴仁县| 乌苏市| 靖州| 颍上县| 神池县| 佛坪县| 保康县| 河北区| 兴山县| 子洲县| 阿鲁科尔沁旗| 同仁县|