Khi tôi thêm một bảo vệ bao gồm tập tin tiêu đề của tôi cho một dự án Visual C++, nó mang lại cho tôi những cảnh báo và báo lỗi sau:Vấn đề với bao gồm bảo vệ
warning C4603: '_MAPTEST_H' : macro is not defined or definition is different after precompiled header use
Add macro to precompiled header instead of defining here
.\MapTest.cpp(6) : use of precompiled header** // the precompiled header stdafx.h is included in this line
.\MapTest.cpp(186) : fatal error C1020: unexpected #endif
nhưng khi tôi thêm tiêu đề biên dịch sẵn trước khi bao gồm bảo vệ , không có cảnh báo hoặc lỗi nào được phát ra. Lý do cho điều này là gì?
Bạn có thể đăng số tiền tối thiểu để tái tạo vấn đề này không? –
Số nhận dạng bắt đầu bằng dấu gạch dưới và được theo sau bởi một dấu gạch dưới hoặc chữ cái khác được đặt trước, không sử dụng chúng. – GManNickG
#ifndef _MAPTEST_H #define _MAPTEST_H #include "stdafx.h" _MAPTEST_H là tên bảo vệ bao gồm. Khi tôi đặt tiêu đề biên dịch trước trước khi định nghĩa macro, hoạt động tốt. – Izza