Giá trị khởi tạo là gì

Hàm khởi tạo là một hàm đặc biệt trong lớp. Hàm này được gọi tự động khi một đối tượng được tạo ra. Hàm khởi tạo sẽ khởi tạo giá trị cho các thuộc tính của đối tượng. Trong C++, một hàm khởi tạo có đặc điểm sau:

− Tên hàm khởi tạo trùng với tên của lớp.

− Hàm khởi tạo không có kiểu dữ liệu trả về [kể cả void].

− Hàm khởi tạo phải được khai báo với phạm vi truy cập là public.

− Hàm khởi tạo có thể có đối số hoặc không có đối số.

− Trong một lớp có thể có nhiều hàm khởi tạo [cùng tên nhưng khác đối số].

Ví dụ: class Circle{ private: float r; public: //Hàm khởi tạo không có tham số Circle[]{ this->r = 1.0; } //Hàm khởi tạo có tham số Circle[float r]{ this->r = r; } void setRadius[float r]{ this->r = r; } float getRadius[]{ return r; } float calculateArea[]{ return 3.14 * r * r; } };

Hàm khởi tạo mà không có đối số nào thì được gọi là hàm khởi tạo mặc định. Hàm này thường dùng gán giá trị mặc định cho các thuộc tính trong lớp.

Trong ví dụ bên dưới, hàm Circle[] là một hàm khởi tạo mặc định.

class Circle{ private: float r; public: Circle[]{ r = 1.0; } void setRadius[float r]{ this->r = r; } float getRadius[]{ return r; } float calculateArea[]{ return 3.14 * r * r; } }; void main[] { Circle c;//sử dụng hàm khởi tạo mặc định coutr = r; } void setRadius[float r]{ this->r = r; } float getRadius[]{ return r; } float calculateArea[]{ return 3.14 * r * r; } }; void main[] { Circle c1[10]; Circle c2[c1];//sử dụng hàm khởi tạo sao chép cout

Chủ Đề