我的項目中有2個cpp和3個頭文件。當我在VS中編譯它時,它工作順利,我沒有收到任何錯誤消息。編譯器沒有看到我的主要功能(未定義的主要參考)
g++ -o program.cpp lineoperations.cpp customer.h transaction.h lineoperations.h
它說:但是,當我試圖通過這條線編譯SSH網絡上
In function `_start':
(.text+0x20): undefined reference to `main'
不要說「不要忘了寫main函數」,因爲它已經在那裏和我的項目在VS上工作。那麼該怎麼辦?
這是從我的代碼相關的部分。 Program.cpp直到主:
#include <iostream>
#include <cstdlib>
#include <iomanip>
#include <ctype.h>
#include <cstring>
#include <cstdio>
#include "lineoperations.h"
using namespace std;
line bankline;
bool operate(char);
void search(char[]);
void add(char[]);
void removee(char[]);
void transaction();
void printline();
int main(){
bankline.create();
bool end = false;
while (!end) {
end = bankline.decideFunction();
}
bankline.close();
return EXIT_SUCCESS;
}
它繼續,但沒有必要粘貼他們我猜。如果您需要查看其他cpp文件或頭文件,我也會粘貼它們。
你能提供[mcve]嗎? – NathanOliver
當你不在VS中編譯時,你是否有可能從編譯中排除main()的#ifdef? –
很多事情都可能出錯。如果這個答案看起來不是特別令人滿意,請發佈更多信息,是的,請提供一個MCVE。 –