c++ - int* a = nullptr; 和有什么区别?和 int *a = nullptr?

标签 c++ pointers

<分区>

在博客和论坛上,我注意到人们使用不同的方式在 C++ 中声明指针:

int* a = nullptr;

int *a = nullptr;

这两种方法有区别吗?如果是,是什么?

最佳答案

在大多数情况下,C++ 中的空格都会被忽略,这就是其中之一。你可以这样写 int*a=nullptr;, int *a=nullptr;, int* a=nullptr;, int * a=nullptr; 或其他任何适合你的东西,对编译器来说都是一样的。大多数人的偏好通常归结为风格指南或其他形式的理由,在他们自己的代码库中最易读。

正如其他人也指出的那样,这可能更多地涉及对如何在声明中确定类型的误解,这在很多情况下确实会造成混淆。我建议您学习如何阅读这些内容(螺旋法则之类的东西是一个很好的起点,即使它不是 100% 准确),因为这将有助于减轻很多困惑。

关于c++ - int* a = nullptr; 和有什么区别?和 int *a = nullptr?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54958035/

相关文章:

c++ - 将指针类参数复制到类成员的好处?

c++ - 避免对非虚拟析构函数进行对象切片

c++ - 如何将 `duration_cast` 用于派生类?

c++ - Visual c++ 6.0 应用程序大小大于 visual studio 2010 应用程序大小

c++ - MinGW + Eclipse : Type invalid conversion from 'void

C++ 指针 - C - 样式字符串

c++ - Visual Studio 指针错误

c++ - 获取元组元素的偏移量

c++ - OpenGL 2D 中的可变形地形 [Worms like]

c - 为指针及其数据分配的内存在哪里?