C ++继承/ #include(多个编译器错误)

时间:2014-04-15 18:58:17

标签: c++ visual-studio inheritance include

这是我的第一篇文章,而且我只是一年级的编程学生。所以,请原谅任何业余/新手语言或对我的不理解,欢呼=)

对于我的应用程序建模任务,我已经完成了使用面向对象编程创建库系统的任务。我目前已经为此设置了类,包括所有方法(获取,设置等),我绝对没有语法错误

但是,我有很多(192并计数......)编译器错误。

我觉得这是因为我使用了继承

我使用了以下类(包括源文件和头文件):

- 复制 -Copy Handler -书 - 书籍处理程序 -目录 - 目录处理程序 -会员 - 会员处理程序 -MembershipApplications -MembershipApplicationsHandler -发票 - 发票处理程序 -订购 -OrderHandler -命令 -OrdersHandler

(处理程序类只用于创建相应的对象,例如复制处理程序创建并返回一个复制对象。)

复制是第一个类,OrdersHandler是我使用继承的最后一个类,包括将它们全部链接在一起。

在" Copy.h"的开头我输入了这个:

#pragma once
#include <array>   //for array used later on
#include <vector>  //for std::vector
#include <string>  //for std::string
using namespace std;

class Copy:
    public CopyHandler //Inheriting from copy handler class

在&#34; CopyHandler.h&#34;的开头我输入了这个:

#pragma once
#include "Copy.h"
class CopyHandler:

public Book //inheritance from book

在#34; Book.h&#34;的开头我输入了这个:

#pragma once
#include "CopyHandler.h"
using namespace std;
class Book:
    public BookHandler

基本上,在每个头文件中,我包含了前一个文件和&#34; public&#34;下一个文件。但是,这仍然导致我3位数的错误......

非常感谢任何帮助。

干杯=)

1 个答案:

答案 0 :(得分:0)

(The handler classes are simply used to create their corresponding object, e.g. copy handler creates and returns a copy object.)

话虽如此,我认为你的理解继承语法翻了。 CopyHandler应该继承Copy,是吗?如果是这样,语法为:

class CopyHandler : public Copy

您的错误来自:

Copy继承自CopyHandlerCopy不知道。 CopyHandler尚未宣布。

继承由子类(由子类启动)完成,而不是由父类强制继承关闭,正如您的语法所暗示的那样。

Good syntax tutorial