2014-12-14 4 views
0

Итак, я только начинаю изучать C++, и я изучаю, как создавать классы. Я создал этот код, math.h - это заголовок для класса, содержащего функцию AddTwo.Странная ошибка с интеграцией классов

#include <iostream> 
#include "math.h" 

using namespace std; 


int main() 
{ 
    int number; 
    cout << "Gimme a number: "; 
    cin >> number; 
    cout << number << " plus 2 is " << AddTwo(number) << endl; 
} 

компилятор генерирует несколько ошибок, о функциях в пространстве имен станд как: «соиЬ не был объявлен в этой области»

Вот код в math.h

#ifndef MATH_H_INCLUDED 
#define MATH_H_INCLUDED 

int AddTwo(int a) 

#endif 

Помощь? Что происходит?

+1

Значит ли 'math.h' использовать' cout'? – 0x499602D2

+0

Не зная точно, что находится в math.h, мы не можем помочь. – Daniel

+0

Нет, это не – SaucyGuy

ответ

3

Без ; после int AddTwo(int a) вы обычно получаете кучу странных ошибок.

+0

Смущение! : p Большое спасибо, хотя это сработало :) – SaucyGuy

1

Попробуйте это:

#ifndef MATH_H_INCLUDED 
#define MATH_H_INCLUDED 
// If you define the function in a separate cpp file, 
// then you just forgot the semicolon 
// else define it here: 

int AddTwo(int a) 
{ 
    return a + a; 
} 

// 
#endif 
Смежные вопросы