2012-10-05 70 views
0

可能重複:
Regarding C++ Include another classC++如何從一個類的cpp文件中創建一個.H

我是新的,想了解更多關於我如何分割我的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使用ClassTwo(另一個CPP文件)

如何鏈接它,這樣我可以在ClassTwo

感謝您的幫助使用它。

回答

3

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

在一個側面不e,我已經在您的previous question here上詳細解釋了這一點。
你甚至讀過它嗎?

+0

如何使用ClassTwo在File1.cpp,做包括我 「File2.h」 或 「File1.h」 在File1.cpp –

+0

@baokychen:我已經在上面給出了一個完整的例子。你爲什麼認爲它不回答你問的問題?你讀過我對你之前Q的回答嗎?如果你這樣做了,你不會問Q. –

+0

@Als - 你的例子有一個File1.cpp的錯誤行1應該讀取'#include「File2.h」'。 –

1

我們可以繼續對參與然而文件分成的.cpp和.h/.HPP,變化的方面,我認爲這個鏈接將是很有用處的你:

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

此外,您還將希望避免「使用名稱空間標準;」因爲編譯器不必要地加載整個C++標準名稱空間。除此之外,這樣做可能會不經意間導致函數名稱衝突等。實際上,只加載將使用的標準名稱空間或將經常使用的東西。

在這裏看到更多:

Why is "using namespace std" considered bad practice?

相關問題