error C2664 cannot convert parameter 1 from 'std:string' to 'const processor &'解决思路
error C2664 cannot convert parameter 1 from 'std::string' to 'const processor &'
在vc2003下添加了个类processor 。
将自动生成的构造函数改为如下:
processor::processor(string filename,bool display=true)
在一个对话框的.cpp文件里使用如下语句:
processor p1(openfilename);
其中openfilename 为string类型。
出现如下错误提示:
error C2664: 'processor::processor(const processor &) ' : cannot convert parameter 1 from 'std::string ' to 'const processor & '
Reason: cannot convert from 'std::string ' to 'const processor '
No constructor could take the source type, or constructor overload resolution was ambiguous
请教什么原因?
------解决方案--------------------
processor p1(openfilename);
这句有岐意,编译器选择另一个构造函数:processor::processor(const processor & pr);
所以,这样写试试:
processor p1(openfilename, true);
------解决方案--------------------
processor::processor(const string& filename, bool display=true)
这样试试
在vc2003下添加了个类processor 。
将自动生成的构造函数改为如下:
processor::processor(string filename,bool display=true)
在一个对话框的.cpp文件里使用如下语句:
processor p1(openfilename);
其中openfilename 为string类型。
出现如下错误提示:
error C2664: 'processor::processor(const processor &) ' : cannot convert parameter 1 from 'std::string ' to 'const processor & '
Reason: cannot convert from 'std::string ' to 'const processor '
No constructor could take the source type, or constructor overload resolution was ambiguous
请教什么原因?
------解决方案--------------------
processor p1(openfilename);
这句有岐意,编译器选择另一个构造函数:processor::processor(const processor & pr);
所以,这样写试试:
processor p1(openfilename, true);
------解决方案--------------------
processor::processor(const string& filename, bool display=true)
这样试试