gpt4 book ai didi

c++ - 对结构进行操作并将结果分配给同一结构是不好的做法吗?为什么?

转载 作者:太空狗 更新时间:2023-10-29 19:58:02 25 4
gpt4 key购买 nike

我不记得见过像这个假设片段这样的代码示例:

cpu->dev.bus->uevent = (cpu->dev.bus->uevent) >> 16; //or the equivalent using a macro  

其中大型结构中的成员使用指针取消引用,对其进行操作,并将结果分配回结构的同一字段。

内核似乎是一个经常出现这种大型结构的地方,但我还没有看到它的例子,并对原因产生了兴趣。

这是否有性能原因,可能与跟随指针所需的时间有关?它只是不是很好的风格吗?如果是,首选的方式是什么?

最佳答案

该语句在语法上没有任何问题,但这样编写更容易:

cpu->dev.bus->uevent >>= 16;

关于c++ - 对结构进行操作并将结果分配给同一结构是不好的做法吗?为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27011440/

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