c++指针函数的定义及用法

avatar
作者
筋斗云
阅读量:0

C++中的指针函数是返回指针的函数。它可以返回指向任何数据类型的指针,包括基本数据类型、自定义数据类型、数组等。

指针函数的定义形式如下:

返回类型* 函数名(参数列表) {     // 函数体 } 

其中,返回类型表示函数返回的指针类型,*表示指针类型的标识符,函数名是函数的名称,参数列表是函数可以接受的参数。

指针函数的用法如下:

  1. 返回指向基本数据类型的指针:
int* getNumber() {     int* ptr = new int;     *ptr = 10;     return ptr; }  int main() {     int* numPtr = getNumber();     cout << *numPtr << endl;  // 输出:10     delete numPtr;     return 0; } 
  1. 返回指向自定义数据类型的指针:
struct Person {     string name;     int age; };  Person* createPerson(string name, int age) {     Person* ptr = new Person;     ptr->name = name;     ptr->age = age;     return ptr; }  int main() {     Person* personPtr = createPerson("Alice", 20);     cout << personPtr->name << endl;  // 输出:Alice     cout << personPtr->age << endl;   // 输出:20     delete personPtr;     return 0; } 
  1. 返回指向数组的指针:
int* createArray(int size) {     int* arr = new int[size];     for (int i = 0; i < size; i++) {         arr[i] = i + 1;     }     return arr; }  int main() {     int* arrPtr = createArray(5);     for (int i = 0; i < 5; i++) {         cout << arrPtr[i] << " ";  // 输出:1 2 3 4 5     }     delete[] arrPtr;     return 0; } 

需要注意的是,在使用完指针函数返回的指针后,需要手动释放内存,以防止内存泄漏。可以使用delete释放单个指针指向的内存,或者使用delete[]释放指向数组的指针指向的内存。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!