In list.cpp fügen Sie sowohl "line.h" als auch "list.h" ein. Aber "list.h" enthält bereits "line.h", so dass "list.h" tatsächlich zweimal in Ihrem Code enthalten ist. (Der Präprozessor ist nicht schlau genug, um etwas nicht aufzunehmen, das er bereits hat).
Es gibt zwei Lösungen:
Sie fügen "line.h" zweimal ein, und Sie haben keine Wächter in Ihren Header-Dateien.
Wenn Sie etwas hinzufügen wie:
%Vor%zu Ihren Header-Dateien, es wird alles gut gehen.
Tags und Links c++