gpt4 book ai didi

C++:我需要释放函数内部的指针吗?

转载 作者:太空宇宙 更新时间:2023-11-04 14:36:14 26 4
gpt4 key购买 nike

我需要释放 ptr 吗?如果是,怎么办?

#include <iostream>
using namespace std;

void printFromPtr(int *ptr);

int main()
{
int a = 3;
int numPrint = 10000;
for (int i = 0; i < numPrint; i++)
{
printFromPtr(&a);
}
}

void printFromPtr(int* ptr)
{
cout << *ptr << endl;
}

最佳答案

没有。

该函数正在从调用者处接收一个指针,并且不知道所指向的内存是如何分配的,因此它没有尝试释放它的任务。只有调用者知道它是如何分配的,所以只有调用者知道如何释放它。

在这个例子中,调用者传递了一个指向局部变量 a 的指针,它不是动态分配的,所以没有什么可以手动释放的。当变量超出范围时,该变量将消失。

关于C++:我需要释放函数内部的指针吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47009057/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com