Witam wszystkich!
Niedawno zaczęliśmy w szkole programowanie obiektowe w C++. Staram się ogarniać ewentualne braki przy pomocy filmów Pana Mirosława, jednak przerastają mnie funkcje zaprzyjaźnione.
Mam tu chyba dość proste zadanie, które gdyby wyciąć z niego element z funkcją zaprzyjaźnioną uruchamia się bez problemu. Nie mam niestety zielonego pojęcia jak ową funkcję poprawnie napisać, prosiłbym więc o jakieś wyjaśnienie lub poprawienie tego elementu programu :)
Oto treść zadania:
"Napisz program obliczający objętość prostopadłościanu (klasa Prostopadloscian o polach a,b,h) - funkcja zaprzyjaźniona liczy powierzchnię."
a oto mój kod:
#include <iostream>
#include <cstdlib>
using namespace std;
class Prostopadloscian
{
public:
int a;
int b;
int h;
int wyniko;
int wynikp;
void dodaj_figure()
{
cout<<"Dodawanie nowej figury."<<endl;
cout<<"Podaj dlugosc: "<<endl;
cin>>a;
cout<<"Podaj szerokosc: "<<endl;
cin>>b;
cout<<"Podaj wysokosc: "<<endl;
cin>>h;
}
void objetosc()
{
wyniko=a*b*h;
cout<<"Objetosc: ";
cout<<wyniko<<endl;
}
friend void powierzchnia();
};
void powierzchnia(int wynikp, int a, int b, int h)
{
wynikp=(a*b*2)+(a*h*2)+(b*h*2);
cout<<"Powierzchnia: ";
cout<<wynikp;
}
int main()
{
Prostopadloscian p1;
p1.dodaj_figure();
p1.objetosc();
p1.powierzchnia(int wynikp, int a, int b, int h);
return 0;
}
Z góry dziękuję za pomoc :)