2015-07-03 54 views
0

我遇到了問題,當我cout函數。下面的代碼是在IDE 給我的錯誤:問題當我'cout'一個對象

cout << "La cuerda de raiz tiene valor de: "<< chord.rootChord(const clsSpanCalculation&) 
    << "La cuerda de punta tiene valor de: " << chord.tipChord(clsSpanCalculation &sC); 

clsSpanCalculationclsChordParameters在主跨度爲與和絃分別定義的類。

我正在使用頭文件,這些類是在那裏開發的。 標頭是這些的:

#ifndef __IASS_Project__wingSizing__ 
#define __IASS_Project__wingSizing__ 

#include <stdio.h> 
#include <cmath> 

class clsSpanCalculation{ 
    float wingArea, aspectRatio; 
public: 
    clsSpanCalculation(){} 
    float get_wingArea(void)const{return wingArea;} 
    void set_wingArea(float Sw){wingArea = Sw;} 
    float get_aspectRatio(void)const{return aspectRatio;} 
    void set_aspectRatio(float AR){aspectRatio = AR;} 

    float span()const{ 
     float span; 
     span = sqrt(aspectRatio*wingArea); 
     return span; 
    } 
}; 

class clsChordParameters{ 
    float percentRectArea, percertTrapArea, taperRatio; 
public: 
    float get_percentRectArea(void)const{return percentRectArea;} 
    void set_percentRectArea(float Srect){percentRectArea = Srect;} 
    float get_percentTrapArea(void)const{return percertTrapArea;} 
    void set_percentTrapArea(float Strap){percertTrapArea = Strap;} 
    float get_taperRatio(void)const{return taperRatio;} 
    void set_taperRatio(float lambda){taperRatio = lambda;} 

    float rootChord (const clsSpanCalculation &clsSpanCalculation){ 
     float rootChord, lambdaplus; 
     lambdaplus= taperRatio + 1; 
     rootChord = (2*(clsSpanCalculation.get_wingArea()*(percentRectArea*(lambdaplus)+(2*percertTrapArea))))/((clsSpanCalculation.span()*lambdaplus)/2); 
     return rootChord; 
    } 

    float tipChord (const clsSpanCalculation &sC){ 
     float rootChord, tipChord, lambdaplus; 
     lambdaplus= taperRatio + 1; 
     rootChord = (2*(sC.get_wingArea()*(percentRectArea*(lambdaplus)+(2*percertTrapArea))))/((sC.span()*lambdaplus)/2); 
     tipChord = rootChord*taperRatio; 
     return tipChord; 
    } 
}; 

#endif /* defined(__IASS_Project__wingSizing__) */ 

的IDE給我的錯誤是這個: expected primary-expression before "const"

+0

也許行號會知道 –

+1

不要使用'const'或'static'傳遞函數的參數是有用的。您只需要傳遞變量名稱。否則編譯器可能會認爲你正在聲明一個函數。 –

+0

編譯器期待表達式。也許你打算使用'chord.rootChord(someObject)'而不是'chord.rootChord(const clsSpanCalculation&)'。 –

回答

0

這個代碼看起來錯誤

cout << "La cuerda de raiz tiene valor de: "<< chord.rootChord(const clsSpanCalculation&) 
<< "La cuerda de punta tiene valor de: " << chord.tipChord(clsSpanCalculation &sC); 

您rootchord()和tipchord()函數期望您傳遞它的clsSpanCalculation對象insead

 const clsSpanCalculation& // error no object is declared 
    const clsSpanCalculation& sC //error you are passing the address of C but the tipchord() expects the object C not its address 

你想要做的是使這些類的一個對象,並通過再

cout << "La cuerda de raiz tiene valor de: "<< chord.rootChord(clsSpanCalculation C)// you still have to initialise C an sC 
    cout<< "La cuerda de punta tiene valor de: " << chord.tipChord(clsSpanCalculation sC);