Chương trình | Ví dụ |
#include class Humans{ string name; int age; public: Humans(string, int); string getName(void); int getAge(void); }; Humans::Humans (void){ name = “Default”; age = 21; } Humans::Humans (string s, int a){ name = s; age = a; } string Humans::getName(void){ return name; } int Humans::getAge(void){ return age; } int main(){ Humans man(“Jack”, 21); Humans default; cout<<”The man: “< cout<<”The default: “< return 0; } | The man: Jack, age 21 The default: Default, age 21 |
Giải thích: trong trường hợp ví dụ trên, để tạo đối tượng thuộc lớp Humans, ta có thể sử dụng một trong hai hàm tạo tương ứng: Humans(void) hoặc Humans(string, int). Nếu gọi theo phương thức hàm tạo không đối số, thì tên gọi và tuổi sẽ được tạo mặc định. Còn nếu gọi theo phương thức có đối số, thì tên gọi và tuổi sẽ được tạo theo tham số truyền vào. Bạn cũng cần lưu ý trong cách gọi hàm tạo, đối với hàm tạo có đối số, thì sau tên đối tượng, bạn cung cấp tham số tương ứng với tham số hàm tạo bên trong dấu (). Còn đối với hàm tạo không đối số, thì bạn hãy khai báo nó như khai báo biến mà không hề có bất kì dấu () nào.
Humans man(); //Sai Humans man; //Đúng |
No comments:
Post a Comment