Jee*_*eet 0 c++ overloading operator-keyword
我有一个String类,我想重载+来添加两个String*指针.这样的事情不起作用:
String* operator+(String* s1, String* s2);
Run Code Online (Sandbox Code Playgroud)
有没有办法避免通过引用传递.考虑这个例子:
String* s1 = new String("Hello");
String* s2 = new String("World");
String* s3 = s1 + s2;
Run Code Online (Sandbox Code Playgroud)
我需要这种额外的工作.请建议.
你不能.您不能为内置类型重载运算符.无论如何,为什么要使用指针呢?尽可能避免动态分配!
String s1("Hello");
String s2("World");
String s3 = s1 + s2;
Run Code Online (Sandbox Code Playgroud)
那更好,并且不泄漏.现在你可以重载:
String operator+(const String& s1, const String& s2);
Run Code Online (Sandbox Code Playgroud)
你多么渴望.当然,这是浪费时间,因为std::string存在.:)
| 归档时间: |
|
| 查看次数: |
1136 次 |
| 最近记录: |