C++ 或运算符 运行函数问题

才疏学浅,刚刚发现在C++的或(||)运算符中,若有以下情况:

bool result = (条件判断函数1) || (条件判断函数2) 

若  条件判断函数1  为真,则不运行  条件判断函数2.

1、条件判断函数1 为真,  情况如下:

bool isRunOr1(void)
{
	cout << "Run condition 1 program" << endl;
	return 1;
}

bool isRunOr2(void)
{
	cout << "Run condition 2 program" << endl;
	return 1;
}

int main()
{
	cout << "Start test1 :" << endl;
	bool result = isRunOr1() || isRunOr2();
	cout << result << endl;
}

此时运行结果:

此时程序只运行了条件判断函数1。

2、条件判断函数1 为假,  情况如下:

bool isRunOr1(void)
{
	cout << "Run condition 1 program" << endl;
	return 0;
}

bool isRunOr2(void)
{
	cout << "Run condition 2 program" << endl;
	return 1;
}

int main()
{
	cout << "Start test1 :" << endl;
	bool result = isRunOr1() || isRunOr2();
	cout << result << endl;
}

此时程序同时运行了条件判断函数1和条件判断函数2。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章