summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorven <vendethiel@hotmail.fr>2017-05-18 12:54:00 +0200
committerGitHub <noreply@github.com>2017-05-18 12:54:00 +0200
commitf5cb3924ef5fd07bf8ea3d324106de9dc3263c2c (patch)
treec34b83799cacd588a1503b38ed6c3e89fa799409
parenteb44c5bc91e5b14a43a1a61cd62775d7b2abd008 (diff)
small changes to #1854
-rw-r--r--fr-fr/c++-fr.html.markdown57
1 files changed, 28 insertions, 29 deletions
diff --git a/fr-fr/c++-fr.html.markdown b/fr-fr/c++-fr.html.markdown
index 5cabc98d..acbaed58 100644
--- a/fr-fr/c++-fr.html.markdown
+++ b/fr-fr/c++-fr.html.markdown
@@ -190,7 +190,7 @@ int main()
{
int monEntier;
- // Imprime vers stdout (ou le terminal/l'écran)
+ // Affiche sur stdout (ou le terminal/l'écran)
cout << "Entrez votre chiffre favori:\n";
// Prend l'entrée clavier
cin >> monEntier;
@@ -222,7 +222,7 @@ cout << maChaine + monAutreChaine; // Bonjour tout le monde !"
cout << maChaine + " toi !"; // "Bonjour toi !"
-// Les chaînes de caractères C++ sont mutables et ont des valeurs sémantiques.
+// Les chaînes de caractères C++ sont mutables.
maChaine.append(" le chien !");
cout << maChaine; // "Bonjour le chien !"
@@ -233,8 +233,8 @@ cout << maChaine; // "Bonjour le chien !"
// En plus des pointeurs comme ceux en C,
// C++ possède des _références_.
-// Ce sont des types de pointeurs qui ne peuvent pas être réassignés une fois
-// initialisés, et ne peuvent pas être nulles.
+// Ce sont des types de pointeurs qui ne peuvent pas être réassignés
+// une fois initialisés, et ne peuvent pas être nulles.
// Ils partagent la même syntaxe que les variables elles-mêmes:
// les * ne sont pas nécessaires pour les déréférencer et
// & (addresse de) n'est pas utilisé pour l'assignement.
@@ -247,15 +247,15 @@ string bar = "Je suis bar";
string& fooRef = foo; // Ceci créé une référence à foo
fooRef += ". Salut!"; // Modifie foo à travers la référence
-cout << fooRef; // Imprime "Je suis foo. Salut!"
+cout << fooRef; // Affiche "Je suis foo. Salut!"
// Ne réassigne pas "fooRef". Ceci revient à faire "foo = bar", et
// foo == "I am bar"
// après cette ligne.
-cout << &fooRef << endl; // Imprime l'adresse de foo
+cout << &fooRef << endl; // Affiche l'adresse de foo
fooRef = bar;
-cout << &fooRef << endl; // Imprime toujours l'adresse de foo
-cout << fooRef; // Imprime "Je suis bar"
+cout << &fooRef << endl; // Affiche toujours l'adresse de foo
+cout << fooRef; // Affiche "Je suis bar"
// L'adresse de fooRef reste la même, c.-à-d. référence toujours foo.
@@ -396,7 +396,6 @@ void EcrireTypeVoiturePrefereDansLeFichier(ETypesDeVoitures TypeVoitureEntree)
// Classes et programmation orientée objet
///////////////////////////////////////////////////
-// Premier exemple de classes
#include <iostream>
// Déclare une classe.
@@ -424,7 +423,7 @@ public:
// Les fonctions qui ne modifient pas l'état de l'objet devraient être
// marquées en constantes avec const.
- // Ceci vous permet de les appeler avec une référence constante de l'objet.
+ // Ceci vous permet de les appeler avec une référence constante vers l'objet.
// Notez aussi que les fonctions devant être surchargées dans des classes
// dérivées doivent être explicitement déclarées avec _virtual_.
// Les fonctions ne sont pas virtuelles par défault pour des raisons de
@@ -445,7 +444,7 @@ public:
// classe de base ou d'un pointeur.
virtual ~Chien();
-}; // Un semicolon doit clôre la définition de la classe.
+}; // Un point virgule doit clôre la définition de la classe.
// Les fonctions membres de la classe sont habituellement implémentées dans des
// fichiers .cpp.
@@ -522,7 +521,7 @@ void ChienDomestique::imprimer() const
// Appelle la fonction "imprimer" dans la classe de base Chien
Chien::imprimer();
std::cout << "Le chien appartient à " << proprietaire << "\n";
- // Imprime "Le chien est <nom> et pèse <poids>"
+ // Affiche "Le chien est <nom> et pèse <poids>"
// "Le chien appartient à <proprietaire>"
}
@@ -548,7 +547,7 @@ public:
// mais initialise le Point à la valeur par défaut (0, 0)
Point() { };
- // La syntaxe suivante est connue comme une liste d'initialisation et est
+ // La syntaxe suivante s'appelle une liste d'initialisation et est
// la façon correcte d'initialiser les valeurs des membres d'une classe.
Point (double a, double b) :
x(a),
@@ -584,7 +583,7 @@ int main () {
// Appelle l'opérateur + du Point
// Le point "haut" appelle la fonction + avec "droite" comme paramètre
Point resultat = haut + droite;
- // Prints "Le résultat est haut-droite (1,1)"
+ // Affiche "Le résultat est haut-droite (1,1)"
cout << "Le résultat est haut-droite (" << resultat.x << ','
<< resultat.y << ")\n";
return 0;
@@ -594,7 +593,7 @@ int main () {
// Patrons (templates)
////////////////////////////////
-// Les modèles (patrons, ou encore "templates") en C++ sont majoritairement
+// Les templates (patrons) en C++ sont majoritairement
// utilisés pour la programmation générique, bien qu'ils soient bien plus
// puissants que les constructeurs génériques dans d'autres langages.
// Ils gèrent également la spécialisation explicite et partielle ainsi que
@@ -654,7 +653,7 @@ void aboyerTroisFois(const T& entree)
Chien docile;
docile.initialiserNom("Docile")
-aboyerTroisFois(docile); // Imprime "Docile fait ouaf !" trois fois.
+aboyerTroisFois(docile); // Affiche "Docile fait ouaf !" trois fois.
// Les paramètres génériques (ou paramètres template) ne sont pas forcément des
// classes :
@@ -673,16 +672,16 @@ void imprimerMessage<10>() {
cout << "Apprenez le C++ plus vite en seulement 10 minutes !" << endl;
}
-// Imprime "Apprenez le C++ en 20 minutes !"
+// Affiche "Apprenez le C++ en 20 minutes !"
imprimerMessage<20>();
-// Imprime "Apprenez le C++ plus vite en seulement 10 minutes !"
+// Affiche "Apprenez le C++ plus vite en seulement 10 minutes !"
imprimerMessage<10>();
//////////////////////////////////
// Gestion des exceptions
//////////////////////////////////
-// La librairie standard fournit quelques types d'exception
+// La bibliothèque standard fournit quelques types d'exception
// (voir http://en.cppreference.com/w/cpp/error/exception)
// mais n'importe quel type peut être lancé en tant qu'exception.
#include <exception>
@@ -743,22 +742,22 @@ void faireQuelqueChoseAvecUnFichier(const char* nomDuFichier)
// gestion du fichier si un problème se produit.
bool faireQuelqueChoseAvecUnFichier(const char* nomDuFichier)
{
- FILE* fh = fopen(nomDuFichier, "r"); // Open the file in read mode
+ FILE* fh = fopen(nomDuFichier, "r"); // Ouvre le fichier en mode lecture.
if (fh == nullptr) // Le pointeur retourné est null à un échec.
return false; // Signale cet échec à l'appelant.
// Suppose que chaque fonction retourne faux si elle échoue
if (!faireQuelqueChoseAvecLeFichier(fh)) {
- fclose(fh); // Ferme la gestion du fichier pour que cela ne fuite pas
- return false; // Propage l'erreur
+        fclose(fh); // Ferme le flux d'entrée du fichier pour empêcher les fuites
+        return false; // Propage l'erreur
}
if (!faireAutreChoseAvec(fh)) {
- fclose(fh); // Ferme la gestion du fichier pour que cela ne fuite pas
- return false; // Propage l'erreur
+ fclose(fh);
+ return false;
}
- fclose(fh); // Ferme la gestion du fichier pour que cela ne fuite pas
- return true; // Indique le succès
+ fclose(fh);
+ return true;
}
// Les programmeurs en C clarifient souvent tout cela en utilisant goto :
@@ -822,9 +821,9 @@ void faireQuelqueChoseAvecUnFichier(const std::string& nomDuFichier)
// Ceci a des avantages _énormes_ :
// 1. Peu importe la situation, la ressource (dans ce cas précis la gestion
-// de fichier) sera libérée. Dès que le destructeur est écrit correctement,
+// de fichier) sera libérée. Si le destructeur est écrit correctement,
// il est _impossible_ d'oublier de fermer la gestion et d'entraîner une
-// une fuite de ressources.
+// une fuite de ressources (si l'objet est sur la pile).
// 2. Remarquez que le code est beaucoup plus clair.
// Le destructeur gère la fermeture du fichier discrètement sans avoir
// besoin de s'en préoccuper.
@@ -914,4 +913,4 @@ Lecture complémentaire :
Une référence à jour du langage est disponible à
<http://cppreference.com/w/cpp>
-Des ressources supplémentaires sont disponibles à <http://cplusplus.com> \ No newline at end of file
+Des ressources supplémentaires sont disponibles à <http://cplusplus.com>