Bonsoir à tous,
J'étudie le livre Accelerated C++ et j'en suis au Chapter one, vraiment très intéressant.
J'ai presque tout compris le fonctionnement de ce code:
La seule chose que j'ai du mal c'est:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 #include <iostream> #include <string> int main() { std::cout << "What's your first name ? :" ; std::string name; std::cin >> name; const std::string message = "Hello " + name + "!" ; const std::string espaces(message.size(), ' '); const std::string second = "* " + espaces + " *"; const std::string first(second.size(), '*'); std::cout << std::endl ; std::cout << first << std::endl; std::cout << second << std::endl; std::cout << "* " << message << " *" << std::endl; std::cout << second << std::endl; std::cout << first << std::endl; return 0; }
(message.size(), ' ');
Code : Sélectionner tout - Visualiser dans une fenêtre à part const std::string espaces(message.size(), ' ');
-size est ce quelque chose d'intégrer et non une simple variable ?
Le fonctionnement de ce code serait donc :
espaces de type string vaut un entier qui est égal à la longueur de message par ' ' ?
Comment cela se fait il que message.size() compte le nombres de caractères/espaces alors qu'il n'y a pas de boucle pour parcourir la chaine ?
Merci
Partager