在测试中,我不得不在结构车(某些车的功能)中编写一些参数。我写了这段代码:
struct car
{
string plate, template, brand;
int doors;
float engine_size;
void ins()
{
cout << "Insert the template" << endl;
cin >> template;
cout << "Insert the engine size" << endl;
cin >> engine_size;
// it would continue but it is the same
}
}
我的教授告诉我这是错误的,他用以下代码纠正了此问题:
struct car
{
string plate, template, brand;
int doors;
float engine_size;
void ins()
{
string t;
int e;
cout << "Insert the template" << endl;
cin >> t;
t = template;
cout << "Insert the engine size" << endl;
cin >> e;
e = engine_size
// it would continue but it is the same
}
}
答案 0 :(得分:3)
也许您的教授对output_wavelets
的运作方式有一些奇怪的误解。那就是我能提出的唯一解释。但是,我认为这些“修复”没有充分的理由。相反,您不需要这些额外的变量,它们只是使代码变得更加冗长而没有收获。请注意,即使您需要这些附加变量,也应仅在需要时才在函数顶部声明它们。
您的代码中存在两个实际问题:类声明后错过了operator>>
,并且不能使用;
作为变量名。
实际上,我认为某个地方一定存在一些误解。您确定您了解教授的建议并将其正确张贴在这里吗?我建议您再次要求他们解释为什么要进行这些更改。无论如何,如果您的老师在没有给出充分理由的情况下告诉您“那样做”,那就太糟糕了。不要遵循您不理解的规则。
PS:最后也是最不重要的一点,我忽略了您分配作业错误的事实。您的第二个片段确实不能不那么正确...