Les constructeurs permettent de convertir des objets à partir d’instances (de valeurs) exprimées dans un autre type.
Prenons le cas de notre classe Chaine. Il serait intéressant de "convertir" un char* ou un char en chaîne :
#include <string.h> class Chaine { private: char*buffer; int t_buf; int longueur; public: // un constructeur par défaut Chaine() { t_buf=100; buffer=new char[t_buf]; longueur=0; } Chaine (int t_buf) { this->t_buf=t_buf; buffer=new char[t_buf]; longueur=0; } Chaine(char c) { t_buf=1; longueur=1; buffer=new char[t_buf]; buffer[0]=c; } Chaine(char*s) { t_buf=strlen(s)+1; buffer=new char[t_buf]; longueur=strlen(s); strcpy(buffer,s); } void afficher() { for(int i=0; i<longueur; i++) printf("%c",buffer[i]); printf("\n"); } } ; int main(int argc, char* argv[]) ...
Abonnement
tous les livres et vidéos ENI en illimité sans engagement
du livre imprimé ou du livre numérique