小编Mik*_*ike的帖子

从C++字符串的子类返回新实例的正确方法

我想扩展C++字符串类,返回子类引用(而不是父字符串引用),但此代码摘录...

#include <string>
using namespace std;

class mystring : public string
{
public:
 mystring&  left( int cnt )
 {   return  (mystring&)mystring( substr(0,cnt) );
 }
};
Run Code Online (Sandbox Code Playgroud)

产生这个VS8编译器错误:

错误C2440:'':无法从'std :: basic_string <_Elem,_Traits,_Ax>'转换为'mystring'

声明mystring :: left()的正确方法是什么,所以编译器会停止抱怨,希望也能消除演员表?

c++

2
推荐指数
1
解决办法
1194
查看次数

标签 统计

c++ ×1