2015-11-06 71 views
-4

我有這樣的代碼:如何在結構中調用函數?

int suma(int); 
int produs(int); 

struct calcul{ 
    int suma(); 
    int produs(); 
} 
suma()=1+2+..n;// return S 
produs()=1*2*..n;// return P 

我想將它與 calcul sp調用主。如何在結構中調用函數? 如果我給n一個n = 5的結構類型;結果是sp(15,120)。 謝謝!

+1

'SUMA()= 1 + 2 + ... N;'這是無效的C++。它應該是什麼意思? –

+0

你的問題不清楚。你想調用結構中的函數? –

+0

C和C++是**不同的**語言!選一個! – Olaf

回答

0

我猜你想要的東西,如:

struct calcul 
{ 
    int suma(int n) 
    { 
     int result = 0; 
     for (int i = 1; i <= n; ++i) 
      result += n; 
     return result; 
    } 
    //... similar for produs 
}; 

int main() 
{ 
    calcul sp; 
    int x = sp.suma(10); 
}; 
0
int suma(int); 
int produs(int); 

struct calcul{ 
    int suma(); 
    int produs(); 
}; 

是兩個完全不同的集合功能,即使它們具有相同的名稱。結構體中的函數是成員函數,只能在結構體的實例上調用。你會做它像這樣:

int main() 
{ 
    calcul x; 
    int a = x.suma(0); 
    int b = x.produs(1); 
}