【发布时间】:2017-01-13 16:35:59
【问题描述】:
我知道x += y 等价于x = x + y。有没有相当于x = y + x的操作。例如,使用此操作组合x 和y,其中x 和y 是"1" 和"2",会使x 等于"21",而不是"12"?
实现就地预先设置字符串的最简单方法是什么?
【问题讨论】:
-
您不能重载基本类型的操作。但是您可以声明一个模拟整数的类,并且对于此类的对象,您可以根据需要重载操作。但是,您可能不会引入新的运营商。您可以重载语言中已经存在的运算符。
-
@NathanOliver 我的意思是字符串!!!我现在要编辑。
-
@theo2003:C++ 中没有任何东西可以阻止您将重载的
x += y实现为x = y + x。这不是一个好习惯,但你可以这样做。这能回答你的问题吗? -
@AnT 我只是在问是否可以以简单的方式完成(没有重载等)。
-
“没有重载”意味着您正在谈论内置运算符。如果是这样,那么您在谈论什么特定的运算符/类型组合?我不知道任何内置的
+=运算符会依赖于订单?您的字符串文字示例毫无意义:您不能在 C++ 中使用+=连接字符串文字。