首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >声明对指针的指针值的引用的开销

声明对指针的指针值的引用的开销
EN

Stack Overflow用户
提问于 2016-06-05 18:06:13
回答 1查看 104关注 0票数 3

假设我有一个函数,它接受一个指向参数的指针。

代码语言:javascript
运行
复制
void foo(Info* bar) {

}

如果I,而不是在任何需要它的值的时候取消对bar的引用,请在函数代码的开头执行此操作:

代码语言:javascript
运行
复制
Info& i_val = *Info;

我这样做是不是引入了什么特别的(明显的)开销?或者,这就像我只是取消引用指针一样?

请注意,我不会接受任何告诉我这是一个坏主意的问题(没有适当的理由),抱怨在C++代码库中使用原始指针。

另外请注意,我不能更改函数的签名。

EN

回答 1

Stack Overflow用户

发布于 2016-06-05 18:11:53

我这样做是不是引入了什么特别的(明显的)开销?

不是的。引用处理非常高效,因此除了引用本身的自动区域中的存储外,您不会使用任何额外的资源。

还是一样,就好像我只是在周围取消引用指针?

创建引用和取消引用原始指针之间的最大区别在于重新分配指针时会发生什么。引用将继续引用创建i_valbar所指向的对象,而直接取消引用bar将提供其当前位置。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37640672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档