C ++编译文件

时间:2012-08-30 06:11:02

标签: c++ compilation abstract-class

我有一个名为LibItem的抽象基类,以及两个名为Book和DVD的继承类。我为每个类制作了.h和.cpp文件。

我现在想在main中使用一些代码来使用这些文件。

目前,我只是在主代码的顶部“包含”.h文件。 这不起作用。

在使用它们之前是否需要编译这些文件?如果是这样,我该怎么做?

更新

这是我的代码:

//---------------------------------------------------------------------------

#ifndef BookH
#define BookH

class Book : public LibItem
{
public:
    Book(const std::string&, const std::string&, const std::string&, const std::string&, const std::string&, const std::string&, const std::string&);
    void setISBN(const std::string&);
    std::string getISBN();
    void PrintDetails();

private:
    Book();
    std::string ISBN;

};

//---------------------------------------------------------------------------
#endif

我收到以下错误:

[BCC32 Error] Book.h(7): E2303 Type name expected
[BCC32 Error] Book.h(9): E2090 Qualifier 'std' is not a class or namespace name
[BCC32 Error] Book.h(9): E2293 ) expected
[BCC32 Error] Book.h(10): E2090 Qualifier 'std' is not a class or namespace name

我可以帮助解决这些错误吗?

1 个答案:

答案 0 :(得分:1)

您必须包含all.h文件,其中包含您要在主文件中使用的声明。此外,您必须将所有.cpp文件添加到project / makefile / etc以进行编译,因为.h文件不是编译单元...