gpt4 book ai didi

c++ - Type** name 和 Type* name[] 有什么区别?

转载 作者:可可西里 更新时间:2023-11-01 16:29:22 24 4
gpt4 key购买 nike

Type** name 和 Type* name[] 有什么区别?

为什么有人会使用一个而不是另一个?

谢谢

最佳答案

这取决于它是在变量声明中还是在函数参数中?如果在变量声明中:

Type** name = &pointer_to_type;
Type* name[] = { &pointer_to_type, 0, &pointer_to_type };

第一个是指向类型的指针,而第二个是指向长度为 3 的类型的指针数组。

如果在函数参数中,它们是一样的。数组衰减为指针,Type** nameType* name[] 与函数参数完全相同。但是,第二种形式清楚地表明 name 是一个长度未知的指针数组,而第一种形式则不然。我会使用 Type** 指定单个元素,使用 Type*[] 指定数组。

关于c++ - Type** name 和 Type* name[] 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7654882/

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