2017-03-13 8 views
-1

そうですね、私は困惑しているこの他のエラーを受け取りました...私がしたいのは、実際の部分と2つの複素数Im Imがdisp()を呼び出すと、エラーメッセージが表示されます。神秘的な非クラス型のエラーを取得する(単純でなければならない)

メイン罰金:

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


using namespace std; 

int main() 
{ 
int ImNum,ReNum,ImNum2,ReNum2; 


cout<<"please provide the FIRST Imaginary number: "; 
cin>>ImNum; 
cout<<"please provide the SECOND Imaginary number: "; 
cin>>ImNum2; 
cout<<"please provide the FIRST Real number: "; 
cin>>ReNum; 
cout<<"please provide the SECOND Real number: "; 
cin>>ReNum2; 

imaginary addition(int ImNum, int ReNum, int ImNum2, int ReNum2); 
addition.disp(); 
return 0; 
} 

コンストラクタファイル:

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

using namespace std; 


imaginary::imaginary(int ImNum, int ReNum, int ImNum2, int ReNum2): 
    Im(ImNum), Re(ReNum), Im2(ImNum2), Re2(ReNum2) 
{ 
} 

int imaginary::sumIm(){return (Im+Im2);} 
int imaginary::sumRe(){return (Re+Re2);} 
void imaginary::disp(){ 
    std::cout<< " The student named: "; 
    } 

私はDISP()は私がwhant何を表示しないことを知っているが、私はlater.Theエラーを修正することを私が手にようです次の:

error: request for member 'disp' in 'addition', which is of non-class type 'imaginary(int, int, int, int)' 

任意のヒント:

ありがとうございます:)

+2

'架空の追加を(int型ImNum、int型RENUM、int型ImNum2、int型ReNum2);'; ''虚加え(ImNum、RENUM、ImNum2、ReNum2)でなければなりません。 – Biffen

+0

と 'imaginary.h'? – Jepessen

答えて

2

コンストラクタを呼び出すには、引数の名前だけを記述します。 int ImNum, int ReNum ... のパラメータを宣言し、その結果、変数の代わりにadditionが関数として宣言されます。

あなたが欲しい:

imaginary addition(ImNum, ReNum, ImNum2, ReNum2); 
関連する問題