Salut,
en complément des réponses précédentes, tu peux regarder/utiliser cette classe, issue de boost, une bibliothèque bien connue en C++ :
http://www.boost.org/doc/libs/1_52_0.../rational.html
Bien sûr, tu en trouveras d'autres sur la toile.
En ce qui concerne l'allocation dynamique, on déclare un tableau dont on ne connaît pas la taille à l'aide d'un pointeur. Par exemple,
int* tab; // tableau 1d d'entiers
Ensuite, plus loin dans le code, on alloue ce tableau à la taille souhaitée comme ceci :
tab = new int[N]; // allocation de tab avec une taille N connue
L'allocation dynamique a un coût de maintenance. Il faut libérer la mémoire allouée avant de sortir de la fonction où a eu lieu l'allocation:
delete [] tab; // libération de la mémoire occupée par tab
L'allocation dynamique d'une donnée membre d'une classe fonctionne un peu sur le même principe mais les différentes étapes apparaissent à des endroits différents :
1 2 3 4 5 6 7 8 9 10 11 12 13
| class Tableau
{
// donnee membre (déclaration)
int* donnees;
// constructeur (allocation)
Tableau(int taille)
{donnees = new int[taille];};
// destructeur (libération)
~Tableau()
{delete [] donnees;};
}; |
Ces petits exemples sont simples mais très imparfaits. Je pense qu'une bonne manière de se familiariser avec le C++ est tout simplement de lire la faq de cette rubrique. Elle n'est a priori pas spécialement faite pour cela mais, pour avoir appris une bonne partie du langage en la lisant, elle est assez efficace de ce point de vue.
Puisque tu sembles être familiarisé avec matlab, je pense comme dit précédemment que l'utilisation de la classe vector de la bibliothèque standard te sera bénéfique car elle te permettra de ne pas allouer tout de suite tes tableaux mais également de faire varier dynamiquement leur taille... presque comme en matlab.
Je ne sais vraiment pas quoi te conseiller comme livre pour apprendre le langage C++. En français, je n'en vois que deux :
- la référence en la matière qu'est le livre du créateur du C++ (Stroustrup);
- la dernière version du livre de Delannoy.
A noter que beaucoup sur le forum détestent ce dernier livre à cause de la présence de coquilles dans les versions précédentes. La dernière version est bien meilleure de ce point de vue et assez complète. Elle aborde certains aspects récents du langage. Bien évidemment, je ne peux que te conseiller le livre de Stroustrup mais je pense que son prix n'est absolument pas justifié. Il vaut trois fois plus cher que le Delannoy.
Partager