gpt4 book ai didi

c++ - 在 C++ 中声明指针时,我将星号放在哪里有关系吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:09:03 26 4
gpt4 key购买 nike

我刚刚学习 C++,从过去几天查看的所有示例代码中,我很难理解指针应该放在哪里。

这3个有什么区别?

1. char* x = /* ... */
2. char *y = /* ... */
3. char * z = /* ... */

或者

1. ClassX* x = /* ... */
2. ClassY *y = /* ... */
3. ClassZ * z = /* ... */

感谢您的帮助。

最佳答案

没有区别。它们完全相同。

您可以随意选择编写它。通常,C++ 程序员将星号放在 type 旁边,而 C 程序员更常见的是将星号放在 变量 的名称旁边。

唯一需要注意的缺陷是在一行中声明 多个 变量(如果不是因为这个原因,你真的不应该这样做)。例如,在下面的语句中,只有变量 x 被声明为指针:

char* x, y;

与下面的比较,可以更清楚哪些变量是指针:

char *x, y;

据我所知,第三种语法是两个主要选项之间的一个糟糕的折衷方案。有人决定将星号放在中间,而不是将星号放在其中一个或另一个旁边,这大约是它明确属于的唯一位置。

关于c++ - 在 C++ 中声明指针时,我将星号放在哪里有关系吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5449908/

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