为什么stl中的向量没有+ =运算符

3 c++ stl

我好奇?没有实施的背后有什么高的基础逻辑:

result+=vector1;
Run Code Online (Sandbox Code Playgroud)

结果和vector1都是stl向量.

注意:我知道如何实现该位,但我需要知道什么逻辑,设计STL的圣人在选择不实现此功能时使用了什么?

CB *_*ley 17

什么是你希望result遏制,串联原始的结果resultvector1或逐元素+=(这意味着什么为基础类型),可能是默认初始化的成员,如果大小不匹配?

是的,这是一个答案;).

仅当操作的含义对于基础类型是明确且实用的时,才应该使用运算符重载,并且它将在适当命名的函数调用上提供显着的符号简洁性.

请注意,由于其接口和预期用途,valarray操作员过载更多vector.