如何为变量使用别名?

时间:2018-02-06 18:41:58

标签: c++

我想改进我的代码,是否有其他方法 parent->值[i-1] 确定别名
问题是值[i-1]并不是真正的意图揭示,但是参考花费了一些运行时间。

if (belegt < k) {
     if (prev && prev->belegt > k && prev->parent == parent) {
          for (size_t i = 0; i <= parent->belegt; i++) {
               if (parent->leafptr[i] == this) {
                    Key &above = parent->values[i - 1];
                    Key &previous = prev->values[prev->belegt - 1];

                    add(above, leafptr[0]);

                    leafptr[0] = prev->leafptr[prev->belegt];
                    leafptr[0]->setParent(this);

                    parent->replace_rekursiv(above, previous);

                    prev->belegt--;
                    break;
                }
           }

我想到了像

这样的东西
using above = previous = prev->values[prev->belegt - 1];

但那不会有诀窍吗?

1 个答案:

答案 0 :(得分:2)

  

有没有其他方法可以为parent-&gt; values [i-1]指定别名?

据我所知,唯一的好方法是创建一个引用并使用此引用,如下所示:

Key &above = parent->values[i - 1];

您对运行时成本的假设似乎是不正确的 - 任何理智的编译器都会优化此代码,因此您可能不会打扰。