### Khái niệm lớp và đối tượng trong lập trình hướng đối tượng (OOP) với C++
1. **Lớp (Class):**
- Lớp là một kiểu dữ liệu tùy chỉnh trong C++, giúp định nghĩa một tập hợp các thuộc tính (dữ liệu) và phương thức (hàm) liên quan. Lớp là khuôn mẫu (template) để tạo ra các đối tượng.
- Cú pháp khai báo lớp:
```cpp
class TênLớp {
public:
// Thuộc tính
// Phương thức
};
```
2. **Đối tượng (Object):**
- Đối tượng là một thể hiện (instance) của lớp. Mỗi đối tượng có các thuộc tính và phương thức riêng, dựa trên định nghĩa của lớp.
- Bạn có thể tạo và sử dụng đối tượng như sau:
```cpp
TênLớp tênĐốiTượng; // Khởi tạo đối tượng
```
### Ví dụ:
```cpp
#include <iostream>
using namespace std;
// Khai báo lớp
class Dog {
public:
string name; // Thuộc tính
void bark() { // Phương thức
cout << name << " đã sủa!" << endl;
}
};
int main() {
Dog dog1; // Tạo đối tượng dog1
dog1.name = "Buddy"; // Gán giá trị thuộc tính
dog1.bark(); // Gọi phương thức của đối tượng
return 0;
}
```
### Tóm tắt:
- **Lớp** là khuôn mẫu định nghĩa thuộc tính và phương thức.
- **Đối tượng** là một thực thể cụ thể của lớp, có dữ liệu và hành động riêng.