【发布时间】:2011-10-02 23:54:48
【问题描述】:
我对 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”的转换。
编辑:抱歉没有把问题说清楚
【问题讨论】:
-
发布显示问题的整个(可编译)示例,并显示编译器给出的错误。虽然您正在做一些“非常规”的事情,但发布的代码看起来没有问题,事实上,修复了明显的编译问题(在类定义之后没有
;,没有声明函数的定义),按预期编译。 -
-1 “此行被突出显示为在标题中给出错误”是错误的。标题谈到
myClass。另一方面,代码有myClass1和myClass2,但没有myClass。
标签: c++ visual-c++ vector