相关疑难解决方法(0)

内存方面的C++引用如何?

鉴于:

int i = 42;
int j = 43;
int k = 44;
Run Code Online (Sandbox Code Playgroud)

通过查看变量地址,我们知道每个地址占用4个字节(在大多数平台上).

但考虑到:

int i = 42;
int& j = i;
int k = 44;
Run Code Online (Sandbox Code Playgroud)

我们将看到,变量i确实需要4个字节,但j需要没有k再次发生堆栈上的4个字节.

这里发生了什么?看起来j在运行时根本就不存在.那么我作为函数参数收到的引用呢?这必须在堆栈上占用一些空间......

虽然我们在这里 - 为什么我不能定义数组或引用?

int&[] arr = new int&[SIZE]; // compiler error! array of references is illegal
Run Code Online (Sandbox Code Playgroud)

c++ memory-management reference

42
推荐指数
6
解决办法
2万
查看次数

标签 统计

c++ ×1

memory-management ×1

reference ×1