[英]C++ Inheritance / #include (Multiple compiler errors)
这是我的第一篇文章,而且我只是编程专业的一年级学生。 因此,请原谅任何业余/新手语言或对我的理解不深,欢呼=)
对于我的应用程序建模任务,已完成了使用面向对象编程来创建库系统的任务。 目前,我已经为此设置了所有方法(获取,设置等)的类,并且绝对没有语法错误 。
但是,我有很多(192个还在计数中……)编译器错误。
我感觉这是因为我使用继承的方式 。
我使用了以下类(包括源文件和头文件):
-复制-复制处理程序-图书-图书处理程序-目录-目录处理程序-成员-成员处理程序-MembershipApplications -MembershipApplicationsHandler-发票-发票处理程序-Order -OrderHandler -Orders -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
在“ CopyHandler.h”的开头,我输入了以下内容:
#pragma once
#include "Copy.h"
class CopyHandler:
public Book //inheritance from book
在“ Book.h”的开头,我输入了以下内容:
#pragma once
#include "CopyHandler.h"
using namespace std;
class Book:
public BookHandler
因此,基本上,在每个头文件中,我都包含上一个文件,并“公开”下一个文件。 但是,这仍然会导致我产生3位数字的错误...
任何帮助将不胜感激。
干杯=)
(The handler classes are simply used to create their corresponding object, eg copy handler creates and returns a copy object.)
话虽如此,我认为您对继承语法的理解已发生变化。 CopyHandler
应该从Copy
继承,是吗? 如果是这样,则语法为:
class CopyHandler : public Copy
您的错误源于:
Copy
从CopyHandler
继承,但是Copy
不知道。 CopyHandler
尚未被声明。
继承是由子类(由子类发起)完成的,而不是由父类强制继承的,而不是您的语法建议的那样。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.