我基本上試圖從C++中的類實例化對象並使用其中一個成員函數。這感覺就像一個非常標準的問題,但我在網上找到的所有解決方案都是簡單的支架問題,或者看起來很明顯的範圍解析問題,或者是大量複雜的例子,它們掩蓋了過度複雜的實際情況。我非常感謝任何能夠幫助我理解我在做什麼錯誤的文件。使用頭文件和實現文件實例化和使用C++類
我得到的錯誤是
未定義的參考測試::測試() '
未定義的引用)來測試:: MSG('
我有三個文件,一個main,一個Test.hpp和Test.cpp。
的main.cpp
#include "Test.hpp"
#include <iostream>
using namespace std;
int main(){
Test var;
var.msg();
return 0;
}
Test.hpp
#ifndef TEST_HPP
#define TEST_HPP
class Test{
public:
Test();
void msg();
};
#endif
Test.cpp的
#include "Test.hpp"
#include <iostream>
using namespace std;
Test::Test(){
cout << "instantiated\n\n";
}
void Test::msg(){
cout << "Hello\n\n";
}
顯然你沒有編譯Test.cpp,或者沒有將生成的目標文件與你的程序鏈接起來。 – Quentin
你用什麼IDE?順便說一句,不包括iostream在你的主 – KostasRim
我在ubuntu中使用g ++進行編譯。感謝iostream反饋btw。 –