我什么时候使用和制作指针时
When do I use & when making a pointer
我理解是这样的:
int foo = 5;
int * fooPointer = &foo;
但我知道你也可以做这样的事情:
int foo[5] = {32,12,4};
int * fooPtr = food;
这很奇怪,因为当您使用 int
执行此操作时,您必须将 &
运算符放在 foo
之前,但如果它是一个数组,则不必这样做。你可以声明一个指针,然后说它是一个数组?
它不是一个列表;它是一个数组。
在大多数情况下,数组名称的计算结果为数组第一个元素的地址,您可以将其分配给(或用于初始化)指向数组元素类型的指针。
有一些例外(将数组传递给sizeof
或地址运算符(一元&
),或通过引用传递数组,但这些都不适用于此处。
相关文章:
- 什么时候调用组成单元对象的析构函数
- 什么时候在C++中返回常量引用是个好主意
- 什么时候调用析构函数
- boost odeint什么时候真正调用观测者
- 编译器对数组声明大小的计算。什么时候发生?
- 什么时候最好在子进程中使用 CPU 或 I/O 密集型代码 [ C++ ]
- 您应该在什么时候创建自己的异常类型
- 我什么时候会默认(而不是删除)基类中的复制和移动操作
- 什么时候可以使用常量装饰调用我的重载函数?
- 什么时候用指针调用C++类构造函数
- 我什么时候应该使用新的智能指针
- 我什么时候使用和制作指针时
- 函数指针 - 为什么,什么时候我可以没有
- 如何释放 C++/C 格式的内存?我什么时候会写自由(a);?函数是重新指针
- 我什么时候可以在c++中比较指向同一对象的指针
- 什么时候应该使用指针或引用成员,什么时候应该在Qt中传递nullptr或this作为父指针
- OpenGL什么时候完成函数中的指针
- 什么时候我想从原始指针构造一个共享指针
- 什么时候应该使用原始指针而不是智能指针
- 我应该什么时候传递"T* const&"类型的指针?