C++指针作为函数参数该怎么写
时间: 2023-10-02 14:09:50 浏览: 88
在 C++ 中,指针作为函数参数可以通过以下两种方式传递:
1. 传递指针的地址:函数接受一个指针的指针,即一个指向指针的指针。这样函数就可以修改原始指针的值。
```c++
void func(int **ptr) {
*ptr = new int(10);
}
int main() {
int *ptr = nullptr;
func(&ptr);
std::cout << *ptr << std::endl; // 输出 10
delete ptr;
return 0;
}
```
2. 传递指针的引用:函数接受一个指针的引用,即一个指向指针的引用。这样函数也可以修改原始指针的值。
```c++
void func(int* &ptr) {
ptr = new int(10);
}
int main() {
int *ptr = nullptr;
func(ptr);
std::cout << *ptr << std::endl; // 输出 10
delete ptr;
return 0;
}
```
注意,当函数返回时,如果该指针是通过 new 分配的动态内存,则必须在使用完指针后手动释放内存。
阅读全文