Hàm là một chương trình con trả về một kết quả (số, chuỗi ký tự, v.v.)
Hãy tưởng tượng rằng bạn đã đặt hàng một sản phẩm từ một cửa hàng trực tuyến. Từ quan điểm lập trình, bạn đã gọi một chương trình con nào đó và không giống như một thủ tục, chương trình con này phải trả về một kết quả - giao sản phẩm bạn đã đặt. Các chương trình con này được gọi là hàm.
Một hàm được định dạng chính xác giống như một thủ tục. Điểm khác duy nhất so với thủ tục là sự hiện diện của một toán tử đặc biệt return,
sau đó giá trị được trả về cho chương trình chính là đã viết.
Hàm trả về giá trị trung bình cộng của hai số nguyên sẽ như sau:
trung bình thả nổi (int a, int b)
{
float avg = (a + b)/2.;
trở lại tháng tám;
}
Vẫn còn phải hiểu cách gọi hàm này trong chương trình chính:
Bạn không nên gọi một hàm giống như cách bạn gọi một thủ tục:
trung bình(10, 5);
Giá trị trả về của hàm sẽ bị mất. Như thể hàng hóa từ cửa hàng trực tuyến không được trao cho bất kỳ ai mà bị vứt bỏ. Không chắc là khách hàng sẽ thích nó.
Đúng hơn là lưu kết quả vào một biến (hoặc in kết quả ra màn hình):
a = trung bình(10, 5);
cout << trung bình(10, 5);