C ++错误:类型'double'和<unresolved overloaded =“”function =“”type'=“”to =“”binary =“”'operator'=“”

时间:2015-09-06 14:13:11

标签: c++ converter

1 个答案:

答案 0 :(得分:1)

问题是第21行:

cout << Pound_output = Kilo_input * Pound_const << endl;

您要在此处执行的操作是为Pound_output分配一个值,然后将其传递给cout,这将无效。

你可以这样做(请注意paranthesis!Thx to Alan):

cout << (Pound_output = Kilo_input * Pound_const) << endl;

Pound_output = Kilo_input * Pound_const;
cout << Pound_output << endl;

首先进行转换并打印出来,或者你可以做

cout << Kilo_input * Pound_const << endl;

不会使用变量来存储结果,而是立即打印它。

同样适用于您的第二次转换。

你的if子句还有一点错误。语法是

if (...) { } else if (...) { }

你忘记了第二个if。如果不存在,则else标记没有条件,并且只要第一个语句失败就会执行。请注意区别:

if (a == 1) { cout << "Execute on a = 1"; } else { cout << "Execute on a != 1"; }

if (a == 1) { cout << "Execute on a = 1"; } else if (a == 2) { cout << "Execute on a != 1 and a = 2"; }