Imam jos jedno pitanje, pa cu ga ovdje ubaciti (pritom odmah molim moderatore da promijene naslov topic-a u "C++, razna pitanja", ili tako nesta).
Dakle, konstruiram sljedecu klasu
[code:1]
#include<iostream>
using namespace std;
class cetverokut{
public:
float a, b, c, d;
cetverokut( void );
cetverokut( float, float, float, float );
float opseg( void );
~cetverokut( void ){ cout << "Upravo smo \"de\"-konstruirali cetverokut!"; };
};
[/code:1]
Kao sto se vidi, klasa ima 2 default-na konstruktora, prvi postavlja sve varijable a,..,d jednake nuli (to su kao duljine stranica);
[code:1]
cetverokut::cetverokut( void ){
a=0, b=0, c=0, d=0;
cout << "Upravo smo konstruirali cetverokut!" << endl;
}
[/code:1]
, a drugi konstruktor dozvoljava da odmah damo trazene vrijednosti. Cilj kod tog konstruktora jest, da ako korisnik upise validne vrijednosti tada on postavi vrijednost a,..,d na dane vrijednosti, u suprotnom, ako je barem jedna unesena vrijednost <= od nule, tada sve vrijednosti postavi na nulu, naravno cilj mi je da ta ne moram raditi rucno, nego da se pozove prethodno definirani konstruktor.
Ja sam ovako zamislio kod, no javlja mi se greska, evo koda;
[code:1]
cetverokut::cetverokut( float temp_a, float temp_b, float temp_c, float temp_d ){
if( temp_a > 0 )
a=temp_a;
else{
cetverokut();
return;
}
if( temp_b > 0 )
b=temp_b;
else{
cetverokut();
return;
}
if( temp_c > 0 )
c=temp_c;
else{
cetverokut();
return;
}
if( temp_d > 0 )
d=temp_d;
else{
cetverokut();
return;
}
cout << "Upravo smo konstruirali cetverokut!";
}
[/code:1]
Unaprijed zahvaljujem na pomoci.
Dakako, ako uocite druge pogreske (u ovom ili mojem prethodnom postu) bio bih vam zahvalan, ukoliko bi mi to napomenuli (naime Gauss je spomenuo gazilion greska, no nisam ih uspio naci).
Imam jos jedno pitanje, pa cu ga ovdje ubaciti (pritom odmah molim moderatore da promijene naslov topic-a u "C++, razna pitanja", ili tako nesta).
Dakle, konstruiram sljedecu klasu
Kod: |
#include<iostream>
using namespace std;
class cetverokut{
public:
float a, b, c, d;
cetverokut( void );
cetverokut( float, float, float, float );
float opseg( void );
~cetverokut( void ){ cout << "Upravo smo \"de\"-konstruirali cetverokut!"; };
};
|
Kao sto se vidi, klasa ima 2 default-na konstruktora, prvi postavlja sve varijable a,..,d jednake nuli (to su kao duljine stranica);
Kod: |
cetverokut::cetverokut( void ){
a=0, b=0, c=0, d=0;
cout << "Upravo smo konstruirali cetverokut!" << endl;
}
|
, a drugi konstruktor dozvoljava da odmah damo trazene vrijednosti. Cilj kod tog konstruktora jest, da ako korisnik upise validne vrijednosti tada on postavi vrijednost a,..,d na dane vrijednosti, u suprotnom, ako je barem jedna unesena vrijednost ⇐ od nule, tada sve vrijednosti postavi na nulu, naravno cilj mi je da ta ne moram raditi rucno, nego da se pozove prethodno definirani konstruktor.
Ja sam ovako zamislio kod, no javlja mi se greska, evo koda;
Kod: |
cetverokut::cetverokut( float temp_a, float temp_b, float temp_c, float temp_d ){
if( temp_a > 0 )
a=temp_a;
else{
cetverokut();
return;
}
if( temp_b > 0 )
b=temp_b;
else{
cetverokut();
return;
}
if( temp_c > 0 )
c=temp_c;
else{
cetverokut();
return;
}
if( temp_d > 0 )
d=temp_d;
else{
cetverokut();
return;
}
cout << "Upravo smo konstruirali cetverokut!";
}
|
Unaprijed zahvaljujem na pomoci.
Dakako, ako uocite druge pogreske (u ovom ili mojem prethodnom postu) bio bih vam zahvalan, ukoliko bi mi to napomenuli (naime Gauss je spomenuo gazilion greska, no nisam ih uspio naci).
|