|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: May 2002
Città: Trieste e ovunque.
Messaggi: 111
|
C++, Classi: ho bisogno di un aiuto...
Ciao.
Da qualche settimana sto sfogliando alcuni manuali di C++ per scrivere un codice che gestisca dei Files di Risultati. I risultati contengono forze, spostamenti, deformazioni meccaniche, etichette e richiedono un certo numero di operazioni (post-processing). E' possibile definire in C++ una classe "generica" che contenga 1) una stringa o un intero che identifica l'oggetto 2) un numero intero N (e non dichiarato a priori) di vettori di dimensioni diverse 3) dei metodi generici per poi derivare delle classi figlie che contengano 1) una stringa 2) un numero intero < N di vettori 3) dei metodi ad hoc ?? Ho una conoscenza ancora superficiale del C++, ma vorrei capire se nella classe posso (e come) definire un numero non noto a tempo di compilazione di array. Grazie, attendo consigli!!
__________________
[size=0.7] System Decks:[/size] [size=0.7] DARTH MAUL[/size] [size=0.7] P4 2.4 Ghz > Abit TH7II > 1 GB RIMM > FireGL X1 128Mb > Audigy Player > HD IBM & WD > Aluminium Case C. Master ATCS 410 SX1[/size] [size=0.7] DARTH SIDIOUS [/size] [size=0.7] Dell Precision M60 > Centrino 1.40 Ghz > 2.0 GB RAM> Quadro FX Go 700 128Mb > HD 60 GB 7200 rpm [/size] |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2003
Città: fra casa e lavoro
Messaggi: 1061
|
Codice:
class Generica
{
public:
Generica(const char* nome) : _nome(nome)
{}
virtual ~Generica()
{}
virtual void metodo1() = 0;
virtual int metodo2(int p) = 0;
virtual float metodo3() = 0;
const char* nome() { return _nome.c_str(); }
protected:
std::vector< std::vector<int> > _dati;
private:
std::string _nome;
};
class Figlio1 : public Generica
{
public:
Figlio1 : Generica("figlio1")
{}
void metodo1()
{
cout << "metodo 1 dell'oggetto " << nome();
}
int metodo2(int p)
{
cout << "metodo 2 dell'oggetto " << nome();
}
float metodo3()
{
cout << "metodo3 dell'oggetto " << nome();
}
};
class Figlio2 : public Generica
{
public:
Figlio2 : Generica("figlio2")
{}
void metodo1()
{
cout << "metodo 1 dell'oggetto " << nome();
}
int metodo2(int p)
{
cout << "metodo 2 dell'oggetto " << nome();
}
float metodo3()
{
cout << "metodo3 dell'oggetto " << nome();
}
};
|
|
|
|
|
|
#3 |
|
Member
Iscritto dal: May 2002
Città: Trieste e ovunque.
Messaggi: 111
|
Grazie!
ad essere sincero non ho ancora tutti i mezzi per capire il tuo codice (sto ancora studiando), ma me lo sono salvato! ciauz
__________________
[size=0.7] System Decks:[/size] [size=0.7] DARTH MAUL[/size] [size=0.7] P4 2.4 Ghz > Abit TH7II > 1 GB RIMM > FireGL X1 128Mb > Audigy Player > HD IBM & WD > Aluminium Case C. Master ATCS 410 SX1[/size] [size=0.7] DARTH SIDIOUS [/size] [size=0.7] Dell Precision M60 > Centrino 1.40 Ghz > 2.0 GB RAM> Quadro FX Go 700 128Mb > HD 60 GB 7200 rpm [/size] |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
|
Ma con:
protected: std::vector< std::vector<int> > _dati; non dichiari un vettore di int? Non si dovrebbe invece dichiarare un vettore di vettori?
__________________
Sun Certified Java Programmer EUCIP Core Level Certified European Certification of Informatics Professionals |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
std::vector< std::vector<int> > _dati;
Questo è proprio un vettore di vettori |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Feb 2003
Città: fra casa e lavoro
Messaggi: 1061
|
ecco ha risposto lui (che giornata oggi, sto respirando ora...)
scrivi cosa non ti è chiaro che te lo spieghiamo, in questo momento non ho proprio voglia di spiegarlo linea per linea scusa ^^' |
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Oct 2002
Città: Roma
Messaggi: 1502
|
Quote:
std::vector<int>
__________________
Sun Certified Java Programmer EUCIP Core Level Certified European Certification of Informatics Professionals |
|
|
|
|
|
|
#8 |
|
Member
Iscritto dal: May 2002
Città: Trieste e ovunque.
Messaggi: 111
|
non ti preoccupare per le spiegazioni e i commenti, me la vedo io.
mi basta sapere che se riesce a farlo e avere una traccia su cui lavorare.
__________________
[size=0.7] System Decks:[/size] [size=0.7] DARTH MAUL[/size] [size=0.7] P4 2.4 Ghz > Abit TH7II > 1 GB RIMM > FireGL X1 128Mb > Audigy Player > HD IBM & WD > Aluminium Case C. Master ATCS 410 SX1[/size] [size=0.7] DARTH SIDIOUS [/size] [size=0.7] Dell Precision M60 > Centrino 1.40 Ghz > 2.0 GB RAM> Quadro FX Go 700 128Mb > HD 60 GB 7200 rpm [/size] |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 02:06.



















