Je connais un peu le C et maintenant, je prends un coup d'oeil sur le C++. Je suis habitué à des tableaux de char pour traiter les chaînes C, mais si je regarde le code C++ je vois il y a des exemples à l'aide de deux type de chaîne et des tableaux de char:
#include <iostream>
#include <string>
using namespace std;
int main () {
string mystr;
cout << "What's your name? ";
getline (cin, mystr);
cout << "Hello " << mystr << ".\n";
cout << "What is your favorite team? ";
getline (cin, mystr);
cout << "I like " << mystr << " too!\n";
return 0;
}
et
#include <iostream>
using namespace std;
int main () {
char name[256], title[256];
cout << "Enter your name: ";
cin.getline (name,256);
cout << "Enter your favourite movie: ";
cin.getline (title,256);
cout << name << "'s favourite movie is " << title;
return 0;
}
(les deux exemples de http://www.cplusplus.com)
Je suppose que c'est un très demandé et répondu (évident, non?) question, mais ce serait sympa si quelqu'un pouvait me dire quelle est exactement la différence entre les deux façons de traiter avec des chaînes de caractères en C++ (rendement, l'intégration de l'API, la manière dont chacun est le meilleur, ...).
Je vous remercie.