C++中函数指针用法
时间: 2024-03-06 09:43:30 浏览: 97
C++中函数指针用于存储和调用函数的地址。函数指针可以作为参数传递给其他函数,也可以作为返回值返回。下面是C++中函数指针的用法示例:
1. 定义函数指针类型
```cpp
typedef void (*FuncPtr)(int); // 定义一个函数指针类型,指向参数为int类型,返回值为void的函数
```
2. 声明和初始化函数指针变量
```cpp
void myFunction(int x) {
cout << "Value: " << x << endl;
}
FuncPtr ptr = myFunction; // 声明并初始化函数指针变量ptr,指向myFunction函数
```
3. 调用函数指针所指向的函数
```cpp
ptr(10); // 调用ptr指向的函数,输出:Value: 10
```
4. 将函数指针作为参数传递给其他函数
```cpp
void callFunction(FuncPtr func, int x) {
func(x);
}
callFunction(ptr, 20); // 将ptr作为参数传递给callFunction函数,输出:Value: 20
```
5. 将函数指针作为返回值返回
```cpp
FuncPtr getFunction() {
return myFunction;
}
FuncPtr newPtr = getFunction(); // 将getFunction函数返回的函数指针赋值给newPtr
newPtr(30); // 调用newPtr指向的函数,输出:Value: 30
```
阅读全文