Hỏi về việc thực hiện return trong vòng for của chương trình C++

Chào cả nhà, mình có 1 hàm C++ như sau:

bool panLeft(cv::Mat src, float a){
	for (int i = 0; i< ((int)src.rows / 2); i++){
		if (a > c && ((int)src.at<uchar>(Point(src.cols - 1, i))) == 0){
			return false;
			break;
		}
	}
	return true;
}

Và mình có thắc mắc là nếu lệnh if được thực hiện, tức là return false thì có cần phải thêm break để dừng vòng lặp hay ko hay đã return là chương trình sẽ ngay lập tức dừng chạy?

Không nhé! Return là thoát khỏi hàm rồi

2 Likes

Mình đã thử và thấy chuẩn, cảm ơn bạn :smile:

1 Like

Vậy bạn không thử trước khi hỏi à :smiley:?
break thường dùng trong switch/case bạn nhé.
Còn return thì lúc đó nó thoát khỏi cái function đó luôn, chứ không riêng gì vòng lặp.

trong java sẽ báo compile error :slight_smile:

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?