Comment convertir ce code en C++ ?
string[] strarr = {"ram","mohan","sita"};
foreach(string str in strarr) {
listbox.items.add(str);
}
Comment convertir ce code en C++ ?
string[] strarr = {"ram","mohan","sita"};
foreach(string str in strarr) {
listbox.items.add(str);
}
std::array<std::string, 3> strarr = {"ram", "mohan", "sita"};
for(const std::string& str : strarr) {
listbox.items.add(str);
}
std::string strarr[] = {"ram", "mohan", "sita"};
for(int i = 0; i < 3; ++i) {
listbox.items.add(strarr[i]);
}
ou
std::string strarr[] = {"ram", "mohan", "sita"};
std::vector<std::string> strvec(strarr, strarr + 3);
std::vector<std::string>::iterator itr = strvec.begin();
while(itr != strvec.end()) {
listbox.items.add(*itr);
++itr;
}
boost::array<std::string, 3> strarr = {"ram", "mohan", "sita"};
BOOST_FOREACH(std::string & str, strarr) {
listbox.items.add(str);
}
Qu'en est-il de la taille du tableau comme for(int i = 0; i < sizeof(strarr)/sizeof(strarr[0]); i++)
dans le premier exemple de code ?
Puisque C++11 a 6 ans et 3 normes de retard, puis-je suggérer de déplacer la partie C++11 de la question vers le haut. En fait, supposons que C++11 est la norme par défaut et ne mentionnons pas C++. Au lieu de cela, mentionnez C++98 pour l'autre.
Je sais que Google est nul à cet égard, donc ce n'est pas votre faute, mais la dernière version est la 1.44, donc le lien devrait contenir 1_44, pas 1_35. (Vous devrez corriger les résultats de Google à la main).
Juste pour le plaisir (nouvelles fonctions lambda) :
static std::list<string> some_list;
vector<string> s;
s.push_back("a");
s.push_back("b");
s.push_back("c");
for_each( s.begin(), s.end(), [=](string str)
{
some_list.push_back(str);
}
);
for_each( some_list.begin(), some_list.end(), [](string ss) { cout << ss; } );
Bien qu'il soit recommandé de faire une simple boucle :-)
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.