Visual C++ 不存在从"myClass1"到"myClass1"的合适用户定义转换
visual c++ no suitable user-defined conversion from "myClass1" to "myClass1" exists
我对c++非常陌生,当visual studio 2010突出显示这个语法错误时,我真的很困惑。定义
class myClass1 {
public:
myClass1();
}
class myClass2 {
public:
myClass2();
void doSomething(myClass1 thing) {};
}
int main(int argc, char* argv[]) {
vector<myClass1> arr;
arr.resize(1);
arr[0] = myClass1();
myClass2 c2 = myClass2();
c2.doSomething(arr[0]); //this line is being highlighted as giving the error in the title
};
我真的不明白这是什么意思。
语法错误在我注释的那行,它给出了错误"没有合适的用户定义的从"myClass1"到"myClass1"的转换。
编辑:很抱歉没有把问题说清楚
myClass*类不包含任何内容/不做任何事情,因此很难理解您的目的。您的代码无法编译,因为没有定义构造函数。在您的代码粘贴中,您应该始终提供最少的相关信息(而不是更多)。
要在堆栈上声明一个myClass2对象的实例,只需这样做:
myClass2 c2;
doSomething
方法使用myClass1的副本,这可能不是您想要的。没有定义复制构造函数(但没有要复制的东西)。而且这个函数什么也不做…
相关文章:
- C++如何通过用户输入删除列表元素
- 创建一个函数以在输入为负数或零时输出字符串.第一次执行用户定义的函数
- 如何使用用户输入在C++中正确填充2D数组
- C++MySQL C api用户输入行
- 使用用户定义函数的字符串反转
- 用户定义函数中的指针和输入
- 为什么即使使用-cudart-static进行编译,库用户仍然需要链接到cuda运行时
- 如何只允许用户输入正整数
- C++如何计算用户输入的数字中的偶数位数
- 通过for循环使用用户输入填充列表
- 这是我尝试让用户将值输入到数组中.然后将其隐藏为大量的星号
- 在C++中,我如何接受不同于同一行的用户输入
- 当用户超过按钮点击限制时报告
- Visual C++(VS2017)中用户定义的转换不明确
- 如果用户输入无效,如何使用字符串变量-C++重复输入命令
- C++问题:用户认为数字1-100,程序提出问题不超过6次即可得到答案。无法正确
- 当用户键入分隔符时,停止getline()输入
- 通过错误处理,在C++中可靠地获得用户十六进制输入
- RegGetValue在当前用户下找不到名称
- Visual C++ 不存在从"myClass1"到"myClass1"的合适用户定义转换