#pragma once
không phải là tiêu chuẩn, nhưng được hỗ trợ bởi trình biên dịch như gcc và VC++. Nó giúp tránh các nhân viên bảo vệ.#pragma có từng thêm nhân viên bảo vệ không?
Nhưng, trong nội bộ, trình biên dịch có thêm trình bảo vệ bao gồm cho #pragma một lần không? Nếu không, trình biên dịch đảm bảo rằng tiêu đề như vậy chỉ được bao gồm một lần như thế nào?
Tôi tưởng tượng trình biên dịch đơn giản theo dõi các tệp tiêu đề nào đã được bao gồm và ở đâu. –
Có lẽ một cái gì đó tương tự như phát hiện một chu kỳ trong một đồ thị hướng –
@OliCharlesworth Khả năng không thể tránh được, nhưng trong dự án lớn, có thể không có hàng ngàn tập tin tiêu đề? Vì vậy, nó sẽ là cách hiệu quả? –