我有三個函數返回整數錯誤代碼,例如:在C++中同時分配和條件測試
int my_function_1(const int my_int_param);
int my_function_2(const int my_int_param);
int my_function_3(const int my_int_param);
爲了簡潔起見,我想同時分配和測試錯誤。下面的工作將是可移植的嗎?
int error=0;
...
if (error ||
(error = my_function_1(val1) ||
error = my_function_2(val2) ||
error = my_function_3(val3))) {
std::cout << "AN ERROR OCCURRED!!!" << std::endl;
}
謝謝!
error = my_function_1(val1) - >將始終評估爲true。 – DumbCoder 2010-09-17 15:58:59
即使錯誤值爲0? – 2010-09-17 16:00:02
你真的想讓它難以閱讀嗎?它讓我尖叫。 – 2010-09-17 16:00:31