int a = 5;
int **b = new int*;
*b = &a;
**b = a + 6;
int *c = new int(**b);
我知道 b 是一个指针并且指向一个指针,该指针将在运行时在堆上分配。
new int
返回一个指针,但是new int(**b)
是什么?c指向哪里?
这个复杂的声明让我发疯。
最佳答案
相当于:
int *c = new int(11);
c
指向的值被初始化为11
,即**b
的值。
关于c++ - C++中的动态内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26126771/