Получение «complex-functions.cpp: 57: 25: ошибка: ожидаемый инициализатор перед« добавить »» Что это значит? - PullRequest
0 голосов
/ 10 марта 2012

У меня есть класс, объявленный так в заголовочном файле:

class COMPLEX{
    private:
    typedef struct{
    double real;
    double imaginary;       
                }complex;

Теперь, когда я вызываю это из драйвера функции, я получаю эту ошибку "ожидаемый инициализатор перед добавлением прямо здесь, в этом разделе кода,и, как вы можете видеть, у меня это так же, как и у других частей, которые прекрасно компилируются.

    //returns the phase of the complex number
double COMPLEX ::  getPhase(complex n, int form)
{
 if(form == 0)
 {
    float x = n.real;
    float y = n.imaginary;
    return(atan2(y,x));
 }
 if(form == 1)
 {
    return(n.imaginary);
 }
}

//adds two complex numbers together
void COMPLEX :: complex add(complex n, complex m, int form)
{
    complex temp, temp2, temp3;
 if(form == 0)
 { 
    temp.real = n.real + m.real;
    temp.imaginary = n.imaginary + m.imaginary;
    return(temp);
 }
 if(form == 1)
 {
    temp3.real = (n.real*cos(n.imaginary) + m.real*cos(m.imaginary));
    temp3.imaginary = (n.real*sin(n.imaginary) + m.real*sin(m.imaginary));
    temp2.real = getMagnitude(temp3, 0);
    temp2.imaginary = getPhase(temp3, 0);
    return(temp2);
 }
}

Перед добавлением есть только ошибка, я пытался поместить вещи перед вызывающей функцией сложной функции, но он все еще сказалон ожидал чего-то, прежде чем добавить .... кто-нибудь может помочь?

1 Ответ

1 голос
/ 10 марта 2012

Эта функция

void COMPLEX :: complex add(complex n, complex m, int form)

выглядит так, как будто она возвращает void и COMPLEX::complex.

Вы должны решить, что вы хотите вернуть.

...