Hàm có đối, hàm không đối là gì?

Mình là beginner trong lập trình hướng đối tượng C++, mong mọi người giải thích giúp hàm có đối, hàm không đối là cái gì. Có kèm ví dụ thì càng tốt ạ.
Thankss

@Mars xem bài 10, 11, 12 nhé

http://portal.daynhauhoc.com/p/hoc-lap-trinh-ngon-ngu-cpp/

2 Likes

Đối số là nhận vào một số trong một hàm để xử lý và đưa ra kết quả;

Ví dụ hàm tính tổng 2 số

int tong(int a, int b) {return a+b;}

Thì hàm này nhận vào 2 đối số là a và b, vậy 2 đối số này ở đâu ra, giờ nhìn vào trong hàm main()

void main()
{
int x = 3, y = 5;
int tong = tong(x, y);
}

Khi hàm main có lời gọi hàm tong(x, y) thì hai giá trị x và y lúc này sẽ được truyền vào 2 đối số a và b (nghĩa là lúc này a = 3, b = 5), và hàm tong sẽ trả về giá trị là 8 (do return a+b).

Mô hình giống thế này này:

 tong        a      b -------------------------> return 8
             ^      ^                                   |
             |      |                                   |
             |      |                                   V
 main      x=3    y=5                        int tong = 8 

nếu trong hàm main có lệnh int tong=tong(x,y); thì giá trị int tong này sẽ bằng 8.

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