tôi thấy thông báo cảnh báo này khi biên soạn (gcc 4.6.3, ubuntu) ví dụ:C++ Cảnh báo: loại vô danh không có mối liên kết sử dụng để khai báo biến
struct {
} a;
int main()
{
}
warning: anonymous type with no linkage used to declare variable ‘<anonymous struct> a’ with linkage [enabled by default].
GCC không đưa ra cảnh báo này. Chỉ có G ++.
Thêm tĩnh xóa cảnh báo:
static struct {
} a;
tôi không thể tìm ra ý nghĩa của nó, tại sao expecially type
có liên quan đến linkage
. Tôi nghĩ rằng liên kết phụ thuộc vào nơi và làm thế nào một biến được khai báo, nhưng không phải trên các loại biến chính nó.
có liên quan ?? http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41970 – billz
Nếu một trong hai câu trả lời của tôi hoặc câu trả lời khác giúp bạn nên chấp nhận, tôi nhận thấy rằng bạn chỉ chấp nhận một câu trả lời, nếu bạn không chấp nhận câu trả lời, mọi người sẽ ít có khả năng trả lời các câu hỏi của bạn – aaronman