error: expected template-name before ‘<’ token error: expected ‘{’ before ‘<’ token
错误如下图

原因
宏定义中的DATA_STRUCTURE_CPP_VECTOR_H与Vector.h中的宏定义相同,将Stack.h中的DATA_STRUCTURE_CPP_VECTOR_H改为DATA_STRUCTURE_CPP_STACK_H后编译通过。

对与第一张图中的错误,将**#include "…/Vector/Vector.h"与#ifndef DATA_STRUCTURE_CPP_VECTOR_H
#define DATA_STRUCTURE_CPP_VECTOR_H**调换顺序后编译也通过

本文解决了宏定义重复导致的编译错误问题。通过更改宏名及调整包含文件顺序,成功避免了Vector.h与自定义头文件之间的宏冲突。
2696

被折叠的 条评论
为什么被折叠?



