指针究竟存储了什么?(C++)

7 c++ pointers overhead

我知道指针存储了它们指向的值的地址,但是如果直接在屏幕上显示指针的值,则会得到一个十六进制数字.如果数字正是指针存储的数字,那么当说

pA = pB; //both are pointers
Run Code Online (Sandbox Code Playgroud)

你正在复制地址.那么在处理像ints和bools 这样的非常小的项目时,使用指针会不会有更大的开销?

Zif*_*fre 13

指针基本上只是一个数字.它将地址存储在数据所在的RAM中.指针本身非常小(可能与int32位架构的大小相同,long在64位上).

你是正确的虽然int *在使用ints 时不会节省任何空间.但这不是重点(没有双关语意).指针有那么你可以参考的东西,而不仅仅是使用的东西自己.

  • @dribeas:我不是指C++引用,我的意思是有一些东西可以告诉你在哪里找到东西的理论概念,所以你可以共享数据. (5认同)