我想扩展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++ ×1