gpt4 book ai didi

c++ - 相同的嵌套选择

转载 作者:行者123 更新时间:2023-11-30 03:09:45 25 4
gpt4 key购买 nike

两者之间是否存在任何性能差异:

size.width += this->font->chars[*ch].advance + this->font->chars[*ch].offset.x;

char_data *chars = this->font->chars;
while(...) {
size.width += chars[*ch].advance + chars[*ch].offset.x;
}

在第一个例子中,总是在循环中读取 vars(this->font, font->chars),或者它们被缓存了?

最佳答案

这取决于您的编译器和优化设置。在最基本的层面上,第一个会比较慢,因为您正在执行额外的取消引用和访问操作。但实际上,优化器可以识别这些重复并消除它们。

要明确回答这个问题,您应该运行测试并比较两者,看看运行时间是否存在统计上的显着差异。

关于c++ - 相同的嵌套选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3866344/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com