当前位置:  开发笔记 > 编程语言 > 正文

我在这里制作结构副本吗?

如何解决《我在这里制作结构副本吗?》经验,为你挑选了1个好方法。

这是一个伪代码示例

vector gFred;
{
    // init gFred

    Fred &fred = gFred[0];

    size_t z = 0;
    do
    {
        fred = gFred[z];

        // do odd processing with fred

        z++;
    }
    while (fred.lastElementInSet == 0);
}

引起我注意的是gFred [0]被覆盖的事实.这让我认为,而不是将init作为对新元素的引用,

fred = gFred[z];

实际发生的是gFred [1]覆盖了gFred [0].

我正在考虑在这里做正确的事情,就是把我自己的头脑转过头几次,把它变成一个指针实现并继续我的生活.

我是否正确诊断了这个?还是我需要更多的教育?



1> MSN..:

是的,你在那里得到一个结构副本.引用不能反弹,即它们在初始化后保持不变.

而你的解决方案也是合适的.尽管如此,Dunno还是打了个招呼.

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有