【发布时间】:2019-11-07 04:27:38
【问题描述】:
我已经编写 c++ 有一段时间了。不过,我的问题可能仍然很幼稚。 :)
+= 和 + 有什么区别。例如
std::string a = "Hi";
a += "b" + "c";
或
std::string a = "Hi";
a = a + "b" + "c";
如果有任何区别,哪个更优化使用?哪个操作数较少?
【问题讨论】:
-
编译器应该处理优化
-
我相信原来的 C 对 += 使用了不同的汇编指令,它更加优化。现在它并没有太大的区别。编译器会为你优化它。
-
请注意,因为
a += "b" + "c";添加"b" + "c"中没有涉及string,编译器可能会感到不安。 -
@Satarakar 我会说是的,除了 user4581301 可能对 std::string 有一点看法:它可能略有不同。否则,是的,这是一个骗局。
标签: c++