使用const引用对变量进行别名化

达斯特

当处理T从数组或通过其他冗长语法获得的实例时,我经常使用aconst T&作为对象的别名,并使我的代码更具可读性(当然,只有在对象的生存期允许的情况下)。我已经看到了这个在其他地方,例如这里的斯特凡Reinalter的优秀博客。精简并注释了他的代码版本:

void Render()
{
    for (size_t i = 0; i < m_visibleSubMeshes.size(); ++i)
    {
        // Get current submesh from array and create alias
        const SubMesh& sm = m_subMeshes[i];

        // Enjoy shortened syntax using the const reference
        context->Draw(sm.startIndex, sm.numIndices);
    }
}

这是否会导致附加说明,还是在所有情况下都m_subMeshes[i].startIndexm_subMeshes[i].numIndices直接访问相同

MatiasFG

这取决于配置。

如果进行了优化,那么对于任何好的编译器而言,它都应产生相同的结果。对于发行版本,这将是典型的。

如果禁用了优化,则应该产生较少的指令,因为您仅一次取消了对集合的引用。这对于调试版本来说是很典型的,在这种情况下,它还具有易于检查对象的优点。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用const变量进行数组初始化

来自分类Dev

创建变量的别名/引用(JAVA)

来自分类Dev

别名外壳变量取消引用

来自分类Dev

使用.size()和const变量进行循环

来自分类Dev

使用ntohl()初始化const变量

来自分类Dev

为什么对const进行静态引用会返回对临时变量的引用?

来自分类Dev

通过文本别名引用Javascript变量

来自分类Dev

Swift:通过对变量的引用或“别名”影响结构

来自分类Dev

引用const结构的const数组进行构造

来自分类Dev

当引用的变量从外部更改时,使用对const的引用是否安全?

来自分类Dev

Bash:在变量中使用别名

来自分类Dev

在别名中使用参数变量

来自分类Dev

Bash:在变量中使用别名

来自分类Dev

如何使用变量作为别名

来自分类Dev

使用const进行多维数组初始化

来自分类Dev

数组初始化在C ++中使用const变量

来自分类Dev

在使用新变量对列表进行别名化时,如何维护列表名称

来自分类Dev

别名后引用表时是否需要使用别名?

来自分类Dev

使用完全专业化的别名进行实施切换

来自分类Dev

使用 C++ 初始化 Struct 的变量 const char* const*

来自分类Dev

为什么引用变量需要在定义时进行初始化?

来自分类Dev

如何使用命名变量为const rvalue引用参数定义默认值?

来自分类Dev

如何使用命名变量为const rvalue引用参数定义默认值?

来自分类Dev

使用引用模块的变量

来自分类Dev

使用变量引用SessionStorage

来自分类Dev

通过CRTP使用派生类变量初始化基类静态const变量

来自分类Dev

使用环境变量进行本地序列化配置

来自分类Dev

使用formatStyle进行闪亮的条件变量列格式化

来自分类Dev

C ++:使用x {0}进行变量初始化

Related 相关文章

热门标签

归档