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;
}

.h と .cpp の 2 つのファイルに分割したいのですが、プライベートとパブリックを使用して、これをクラスとして分割するにはどうすればよいですか。

そして、File1.cpp(別のcppファイル)でClassTwoを使用したいと思います

ClassTwo で使用できるようにリンクするにはどうすればよいですか

手伝ってくれてありがとう。

4

2 に答える 2

4

// File2.h

#include <iostream>
#include <string>


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

//File2.cpp

#include"File2.h"

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

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

//File1.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/

さらに、「名前空間stdの使用」も避けたいと思うでしょう。コンパイラがC++標準名前空間全体を不必要にロードするためです。それに加えて、そうすると、誤って関数名の衝突などが発生する可能性があります。実際には、使用する、または頻繁に使用する標準の名前空間からのものだけをロードします。

詳細については、こちらをご覧ください。

「名前空間stdの使用」が悪い習慣と見なされるのはなぜですか?

于 2012-10-05T05:06:08.380 に答える