2014-01-05 2 views
0

У меня есть нерешенный внешний в компиляторе Visual Studio C++, который заставляет меня абсолютно взломать. Заголовок заголовка и исходные файлы чрезвычайно просты.C++ очень простой нерешенный внешний

Заголовочный файл:

// Header file: Rational.h 
class Rational 
{ 
public: 
    Rational (int = 0, int = 1); 
private: 
    int numerator; 
    int denominator;  
}; 

Исходный файл:

// Source file: Rational.cpp 
#include <iostream> 
#include "Rational.h" 

using namespace std; 

Rational::Rational(int n, int d) 
{ 
    numerator = n; 
    denominator = d; 
} 

Сообщения об ошибках:

error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup  

error LNK1120: 1 unresolved externals 

Как это возможно? Я должен упустить что-то очень важное здесь, но теперь я нахожусь в конце моего троса.

Я рассмотрел другие вопросы по этой теме, но не могу найти ответ.

+7

У вас есть 'главный()'? –

+0

Вы забыли определить точку входа ... создайте новый файл и добавьте 'int main (int argc, char ** argv)' –

+0

@ Alan. Еще нет. – OliKlima

ответ

4

У вас есть main()? - Алан Стокс
@ Алан. Еще нет. - OliKlima

Ну, вот и вы.

Это main, который не найден, так как сообщение об ошибке довольно много.

1

Если вы пытаетесь связать Rational.cpp в исполняемый файл, ему нужна точка входа (main). Если вы просто создаете объектный файл, то никаких ссылок не делается. Ваша точка входа может быть помещена в другой файл, т. Е. main.cpp, а затем связать его вместе.

Во-первых, поставить это в main.cpp:

int main() 
{ 
} 

Затем выполните следующие команды:

g++ -c Rational.cpp 
g++ -c main.cpp 
g++ -o main main.o rational.o 
+0

Спасибо, я не буду повторять эту ошибку :) – OliKlima

Смежные вопросы