Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Khi nào dùng khai báo trước (forward declaration) trong C/C++?


Khai báo trước cho phép code sau nó biết tồn tại lớp tên Person. Thỏa mãn trình biên dịch khi thấy tên này dùng. Linker sau đó tìm định nghĩa lớp.

Ví dụ

class Person; // forward declaration

void myFunc(Person p1) {
    // ...
}

class Person {
    // Định nghĩa lớp ở đây
};

Khi compiler gặp myFunc, nó biết sẽ gặp lớp này sau trong code. Dùng khi code sử dụng lớp đặt/include trước code định nghĩa lớp.