【发布时间】:2017-05-24 04:47:21
【问题描述】:
我有结构
struct priv_data { int a ; int b }
struct priv_data priv;
int func()
{
a_val = priv.a;
b_val = priv.b;
printf("a+b=%d , a-b = %d , a*b = %d , a/b = %d",(a_val+b_val),
(a_val-b_val),(a_val*b_val),(a_val/b_val));
}
我的问题是将编译器(工具链)作为一种智能来避免 priv.a 到 a_val 的第一个副本,因为 a_val 被用作只读。代替 a_val 使用 priv.a 在它提到的任何地方,以避免额外的复制。
【问题讨论】:
标签: compiler-optimization toolchain