2
int a = 5;
int **b = new int*;
*b = &a;
**b = a + 6;
int *c = new int(**b);
我知道b是一個指針,它指向一個指針,它將在堆上的運行時分配。 new int
返回一個指針,但什麼是new int(**b)
?c指向哪裏? 這個複雜的聲明讓我瘋狂。C++中的動態內存
int a = 5;
int **b = new int*;
*b = &a;
**b = a + 6;
int *c = new int(**b);
我知道b是一個指針,它指向一個指針,它將在堆上的運行時分配。 new int
返回一個指針,但什麼是new int(**b)
?c指向哪裏? 這個複雜的聲明讓我瘋狂。C++中的動態內存
它等同於:
int *c = new int(11);
是c
點被初始化爲11
,這是**b
值的值。
只是想輸入相同的數字:D – 2014-09-30 17:39:42
除了在這種情況下是11,而不是42. – 2014-09-30 17:40:08
是的,我說*和*類似,不等於*,在例子中使用'42'。 – 2014-09-30 17:41:05