Error LNK2005: "char (* CMND)[25]" (?CMND@@3PAY0BJ@DA) already defined in so doc gia theo gioi tinh.obj

mình tạo 2 cái header.h
trong mỗi cái lại khai báo 3 cái void()
trong source viet chương trình cho 6 cái void đó mỗi cái mình đều include header.h
viết thêm hàm main() include cái đó 2 header.h lun rồi thì nó báo lỗi hơn 100error giống vầy ai giúp sửa với

nếu phương thức cùng tên, cùng tham số, cùng kiểu trả về thì chỉ định nghĩa trong 1 file .h và 1 file .cpp thôi. Nếu muốn viết lại thì phải override

Bạn thử cách này xem:

// Nếu tên file là header.h thì nên đặt thành _HEADER_H_
// Nếu file kia tên là header2.h thì đổi thành _HEADER2_H_
#ifndef _HEADER_H_
#define _HEADER_H_

// Đặt code của bạn ở đây!
void function_1();

#endif

Lỗi đó thường là do include quá nhiều lần dẫn đến việc lặp vô hạn các include (mình đoán vậy thôi).
Mình cũng từng thấy preprocessor #include_once nhưng mình không rõ về nó nên không dám chỉ.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?