【问题标题】:'class' type redefinition error with header guards C++带有标头保护C ++的“类”类型重新定义错误
【发布时间】:2015-04-23 16:54:35
【问题描述】:

据我了解,标题保护用于避免意外多次包含某些内容。但是,当我多次包含一个类时,我仍然会收到重新定义错误。头球后卫不应该照顾这个吗? //animal.h

#ifndef ANIMAL_H
#define AMIMAL_H

class Animal {};

#endif

//main.cpp

#include"animal.h"
#include"animal.h"

错误 C2011:“动物”:“类”类型重新定义

【问题讨论】:

  • 主动“生成预处理文件”查看预处理器的实际输出。
  • 我投票结束这是一个错字,因为ANIMAL_H 的拼写错误 --> AMIMAL_H 对未来的读者没有用处。

标签: c++ class inheritance error-handling redefinition


【解决方案1】:
#ifndef ANIMAL_H
#define AMIMAL_H
         ^

两者都不是ANIMAL_H

【讨论】:

  • 很好看。我没看到,但是我的视力不是那么好。
  • 这只是让我仔细检查我没有犯同样的错误。谢谢......在我的头脑中折腾了很久之后,我拼错了#define 声明。
猜你喜欢
  • 1970-01-01
  • 2016-09-27
  • 1970-01-01
  • 1970-01-01
  • 2016-01-05
  • 2014-11-01
  • 1970-01-01
  • 2019-12-14
  • 1970-01-01
相关资源
最近更新 更多