微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在循环中声明变量是否有任何开销?(C++)

如何解决在循环中声明变量是否有任何开销?(C++)

局部变量的堆栈空间通常在函数范围内分配。因此,循环内部不会发生堆栈指针调整,只需将 4 分配给var. 因此,这两个片段具有相同的开销。

解决方法

我只是想知道如果您执行以下操作是否会降低速度或效率:

int i = 0;
while(i < 100)
{
    int var = 4;
    i++;
}

宣布int var一百次。在我看来会有,但我不确定。这样做会更实用/更快吗:

int i = 0;
int var;
while(i < 100)
{
    var = 4;
    i++;
}

还是它们在速度和效率方面是相同的?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。