我定义了结构
struct X{
char v;
static int c;
X():v(){c++};
~X(){c--};
...
};
和
typedef std::basic_string<X> xs;
那么有没有办法在没有显式转换的情况下使用构造? 我可以用这种方式初始化新字符串:
xs expl_conversion((X*)"olololo");
但有没有办法用隐式转换来做呢?
xs impl_conversion("olololo");
可能是一种转换运算符,但没有更改std :: basic_string。
当我尝试使用这样的东西时:
X * operator X*(char* dat){ return (X*)(dat);}
compilator答案:
operator X**(char*) must be a nonstatic member function
那么有什么方法可以解决这个问题吗? 感谢名单。