0

可能重复:
关于 C++ 包含另一个类

我是新手,想了解更多关于如何将我的 C++ 文件拆分为 .h 和 .cpp 的信息

这是我的 File2.cpp

#include <iostream>
#include <string>

using namespace std;

class ClassTwo
{
private:
string myType;
public:
void setType(string);
string getType();
};


void ClassTwo::setType(string sType)
{
myType = sType;
}

void ClassTwo::getType(float fVal)
{
return myType;
}

我想将其拆分为 2 个文件,即 .h 和 .cpp 我如何将其拆分为一个具有私有和公共的类。

我想在 File1.cpp(另一个 cpp 文件)中使用 ClassTwo

我如何链接它,以便我可以在 ClassTwo 中使用它

感谢帮助。

4

2 回答 2

4

//文件2.h

#include <iostream>
#include <string>


class ClassTwo
{
private:
   std::string myType;
public:
   void setType(std::string);
   std::string getType();
}; 

//文件2.cpp

#include"File2.h"

void ClassTwo::setType(std::string sType)
{
    myType = sType;
}

std::string ClassTwo::getType()
{
    return myType;
} 

//文件1.cpp

#include "File1.h"   //If one exists
#include "File2.h"


int main()
{
    ClassTwo obj;
    return 0;
}

附带说明一下,我已经在此处对您之前的问题进行了非常详细的解释。
你甚至读过它吗?

于 2012-10-05T05:05:18.313 回答
1

我们可以继续讨论将文件分成 .cpp 和 .h/.hpp 所涉及的不同方面,但是,我认为此链接对您很有用:

http://www.learncpp.com/cpp-tutorial/89-class-code-and-header-files/

此外,您还需要避免“使用命名空间标准;” 因为编译器不必要地加载了整个 C++ 标准命名空间。除此之外,这样做可能会无意中导致函数名冲突等。在实践中,只加载您将使用或将经常使用的标准命名空间中的内容。

请参阅此处了解更多信息:

为什么“使用命名空间标准”被认为是不好的做法?

于 2012-10-05T05:06:08.380 回答