考慮下面的代碼:++返回表達式用C
float validateEntry()
{
string entry;
float value;
getline(cin, entry);
value = atof(entry.data());
return ((isNumber(entry) && value >= 0) ? i
: (cout << "Enter valid amount: ", validateEntry())
}
爲什麼最後一行(逗號分隔的表達)允許的,以及是否有可與在C++ return語句可以使用其他表達式?
我在使用逗號的大多是疑惑,想知道這個表達式語法定義(我不知道它的存在,我也不會知道在哪裏可以找到)。我能用無限多的代碼填充最後一個表達式嗎?如果是的話,有什麼限制,要求等?
爲什麼你認爲它不應該被允許的? – 2012-03-15 00:43:18
順便說一下三元運算符'? :'不是'if'的簡寫。 'if'允許有條件地執行代碼(任何代碼)。三元運算符**根據條件返回**兩個值之間的一個值。 – 2012-03-15 00:45:10
對不起,一個完全不正確的標題,因爲我發佈之前忘了修改它。 – skippr 2012-03-15 00:47:00