[Bug report] Fautes de français de la FAQ C++
Je viens de m'inscrire.
J'ai lu par curiosité une dixaine des thèmes abordés par la FAQ C++.
Voici une liste d'erreurs de français que j'ai rencontré.
J'ai relevé aussi trois passages de codes qui me semblent être défaillants.
Je ne sais pas si c'est sur ce forum que ces erreurs sont notées...
prof Tournesol, un développeur francophone fier de l'être
erreurs de français :
1. http://c.developpez.com/faq/cpp/?page=information
Que signifie exactement "mauvais" dans cette FAQ ?
conjugaison : "(je vous entend dire"
2. http://c.developpez.com/faq/cpp/?page=generalites
Que faut-il savoir avant de commencer en C++ ?
ellipse : "ce n'est faire du C avec des classes"
2.2. http://c.developpez.com/faq/cpp/?page=bibliotheques
Comment créer une interface graphique en C++ ?
grammaire : "ont la réputation d'être écrite"
4. http://c.developpez.com/faq/cpp/?page=OO
Que sont les accesseurs / mutateurs ?
orthographe : "il est courant des préfixer"
grammaire : "qui n'est pas directement stockées"
Quand et comment faut-il utiliser des accesseurs / mutateurs ?
orthographe : "ne doit pas forcement"
5. http://c.developpez.com/faq/cpp/?page=classes
Quelle est la différence entre class et struct ?
orthographe : "et les sutrctures"
Comment créer 2 classes qui font référence l'une à l'autre ?
grammaire : "le problème d'inclusions cyclique."
Qu'est-ce qu'une classe abstraite ?
grammaire * 4 :
"ce type de classe ne peut pas être instanciée,
et est donc destinée
à être dérivée
pour être spécialisée."
5.1. http://c.developpez.com/faq/cpp/?page=constructeur
Qu'est-ce qu'un constructeur de copie?
orthographe : "mettre cet objet a disposition"
Est-ce que le constructeur par défaut pour Fred
est toujours Fred::Fred() ?
espace : "un constructeur par défaut:"
Quel constructeur est appelé quand je crée un tableau d'objets Fred ?
temps : "suppose qu'il n'y a"
anglais : "//...assume there is no default ..."
anglais : "// The 10 Fred objects in array ..."
Mes constructeurs doivent-ils
utiliser les listes d'initialisation ou l'affectation ?
majuscule : "En fait, Les constructeurs"
Qu'est-ce que l'idiome du constructeur nommé (Named Constructor)?
espace : "ces derniers ;"
Qu'est ce que "l'idiome des paramètres nommés" ?
grammaire : "pour le second paramètres"
majuscule : "SI nous implémentions"
grammaire : "(il ne sont pas positionnés)"
anglais : "// sets all the default values ..."
anglais : "// vacuums the actual params ..."
5.4. http://c.developpez.com/faq/cpp/?page=static
Qu'est-ce que le "fiasco dans l'ordre d'initialisation
des variables statiques" ?
temps : "alors que l'objet x n'a pas encore été construit."
Pourquoi l'idiome de construction à la première utilisation
utilise-t-il un pointeur statique
plutôt qu'un objet statique ?"
anglais : // was static Fred* ans = new Fred();"
liaison : "si il y a 3 objets statiques"
espace : "La situation est simple ;"
liaison : "si il y a un autre objet statique"
ordre : "dont le destructeur a besoin de ans"
Comment puis-je éviter le "fiasco dans l'ordre d'initialisation
des variables statiques" pour les données membres statiques ?
orthographe : "toutes les utilisations de x_ par c()"
Dois-je me préoccuper du "fiasco dans l'ordre d'initialisation
des variables statiques" pour les types de base ?
anglais : "// forward declaration ..."
orthographe : "La solution, comme précédemment, et d'utiliser"
orthographe : "elle eut donc redevenir"
6. http://c.developpez.com/faq/cpp/?page=fonctions
Comment passer correctement des paramètres à ma fonction ?
temps : "si le paramètre ne sera pas modifié"
6.2. http://c.developpez.com/faq/cpp/?page=inline
Comment les fonctions inline peuvent-elles
influer sur le compromis vitesse/sécurité ?
grammaire : "de ces fonctions inline sont contrôlées"
Pourquoi utiliser une fonction inline au lieu d'une macro #define ?
anglais : "/ A macro that returns ..."
Y a-t-il un autre moyen de spécifier une fonction membre inline ?
ellipse : "dans un monde orienté objet et réutilisation,"
espace : "qui la crée (vous même) ;"
grammaire : "faire les choses en faveurs du plus grand nombre"
9. http://c.developpez.com/faq/cpp/?page=pointeurs
Est-il possible de forcer new à allouer
la mémoire à une adresse précise ?
majuscule : "SI vous ne savez pas comment"
anglais : "...data members used ..."
temps : "si nous avions un appel système qui permet"
temps : "et puis disparaît"
ellipse : "Le but est transformer"
anglais : "// explicitly call dtor ..."
grammaire : "un tableau d'objet Foo qui seraient"
anglais : "/* somehow get the associated 'Pool*' */"
temps : "l'approche la plus sûre est de remplacer"
temps : "par quelque chose qui utilise"
orthographe : "serait le pointeur décrémente de 4"
parenthèse : "de 4 bytes (ou 8) suivant l'architecture)."
majuscule : "pour la libération du pointeur,"
ellipse : "Si on travailler avec un alignement"
anglais : "// so all alloc's get a distinct address ..."
Qu'est-ce qu'un pointeur intelligent ?
ellipse : "et surtout elle n'est absolument élégante."
orthographe : "doit m'être avec delete []."
Comment gérer proprement
des allocations / désallocations de ressources : le RAII
lapsus : "// Enregistre un fichier donné une la base"
11. http://c.developpez.com/faq/cpp/?page=exceptions
Comment lever une exception ?
grammaire : "leur utilité est vite limité"
15. http://c.developpez.com/faq/cpp/?page=STL
Quel conteneur choisir pour stocker mes objets ?
grammaire : "Pour stocker des chaînes de caractère,"
Qu'est-ce qu'un prédicat ?
espace : "les opérateurs
logiques et arithmétiques élémentaires:"
difficultés de code :
5.1. http://c.developpez.com/faq/cpp/?page=constructeur
Qu'est ce que "l'idiome des paramètres nommés" ?
difficulté : "File f = OpenFile("foo.txt");"
proposition : "File f(OpenFile("foo.txt"));"
6. http://c.developpez.com/faq/cpp/?page=fonctions
Pourquoi ne peut-on pas passer une fonction membre
là où on attend un pointeur de fonction ?
difficulté : "&Param, 0 NULL );"
proposition : "&Param, 0, NULL );"
15. http://c.developpez.com/faq/cpp/?page=STL
Comment supprimer correctement des éléments d'un conteneur ?
difficulté : "(std::bind2nd(std::greater<int>(), 3)"
proposition : "(std::bind2nd(std::greater<int>(), 3));"
fautes de français (suite)
J'ai fini ma lecture de la FAQ C/C++ : passionnant !!
Je me posais initialement des questions sur l'utilisation
du flux de la sortie standard en C++ et je suis tombé sur les explications
d'Aurelien.Regat-Barrel en sélectionnant le premier choix offert par Google.
Après un rapide parcours,
je me suis tout de suite senti beaucoup mieux armé.
J'ai eu plaisir à suivre ces histoires passionnantes de codage normalisé
et de gestion intelligente des ressources de la machine.
Merci beaucoup d'avoir eu l'idée et d'avoir consacré du temps
à la confection de cette petite base de questions pertinentes.
Le lecteur se sent immédiatement en confiance en lisant une rédaction
appliquée d'explications très complètes, détaillées, illustrées
et adaptées habilement à la difficulté du problème.
La traduction de Marshall Cline est impeccable.
Je n'ai jamais lu de bouquin de code mais les quelques points
abordés dans la FAQ m'ont donnés une large vision du langage.
Voici d'autres erreurs de français qui trainaient sur le passage de mes yeux.
Merci aux 19 rédacteurs.
Continuez comme ça les gars !!!
prof Tournesol
espace avant le point-virgule
--> fautes de l'ancienne correction
l'espace avant le point virgule est dans un texte français une espace fine :
elle mesure donc en théorie un quart de cadratin.
J'avais relevé dans ma précédente liste d'erreurs 3 fautes d'espace qui
n'en étaient pas : par convention, le point-virgule est précédé d'un espace
et n'est pas colé au texte comme je me l'imaginais au début du mois.
Les 3 fausses erreurs sont alors les suivantes :
5.1. http://c.developpez.com/faq/cpp/?page=constructeur
Qu'est-ce que l'idiome du constructeur nommé (Named Constructor)?
espace : "ces derniers ;"
5.4. http://c.developpez.com/faq/cpp/?page=static
Pourquoi l'idiome de construction à la première utilisation
espace : "La situation est simple ;"
6.2. http://c.developpez.com/faq/cpp/?page=inline
Pourquoi utiliser une fonction inline au lieu d'une macro #define ?
espace : "qui la crée (vous même) ;"
--> nouvelles fautes de français
1. Généralités sur le C++
http://c.developpez.com/faq/cpp/?pag...LITE_apprendre
liaison : "plus si il n'y a pas de bonne bibliothèque"
5.1. Les constructeurs
http://c.developpez.com/faq/cpp/?pag...R_appel_chaine
liaison : "par exemple si il n'y a pas une valeur du paramètre"
http://c.developpez.com/faq/cpp/?pag...R_idiome_nomme
accent : "Faîtes attention à déclarer vos constructeurs"
espace : "dans la section protected: si vous vous attendez"
http://c.developpez.com/faq/cpp/?pag...e_param_nommes
espace : "ou encore en lecture/écriture; si le fichier doit être créé"
liaison * 2 : "si il n'existe pas déjà ; si il doit être ouvert"
ellipse : "n'a donc pas besoin de se souvenir l'ordre"
espace : "ou en sur-écriture (overwrite); la taille des blocs"
espace : "l'ordre des paramètres; de plus les noms sont évidents."
5.2. Les destructeurs
http://c.developpez.com/faq/cpp/?pag...xplicite_local
espace : "pour empêcher que ça arrive; c'est automatique."
7. Les références
http://c.developpez.com/faq/cpp/?pag...FERENCE_handle
orthographe : "nous utilisons le mont handle est quand"
8.1. Les conversions de types
http://c.developpez.com/faq/cpp/?pag...s#DIVERS_casts
orthographe : "pointeur de char -> pointeur de doubles"
répétition : "autrement dit elle doit qu'elle doit obligatoirement"
8.2. La surcharge d'opérateurs
http://c.developpez.com/faq/cpp/?pag...RGE_definition
anglais : "// Without operator overloading: ..."
http://c.developpez.com/faq/cpp/?pag...RCHARGE_beaute
ellipse : "Souvenez que dans un monde orienté réutilisation,"
http://c.developpez.com/faq/cpp/?pag...E_matrix_index
anglais : "//data_ <--initialized below ..."
http://c.developpez.com/faq/cpp/?pag...GE_rapidite_pp
majuscule : "la différence, pour autant"
ponctuation : "qu'il y en ait une n'aura aucune influence"
http://c.developpez.com/faq/cpp/?pag...ation_probleme
ellipse : "Retenez qu'il est votre responsabilité,"
majuscule : "contient un autre bug : Si une exception"
9. Gestion dynamique de la mémoire
http://c.developpez.com/faq/cpp/?pag...sse_specifique
liaison : "Si il en trouve un, il fait un wrapping"
liaison : "et si il est non NULL, il appellera la fonction"
http://c.developpez.com/faq/cpp/?pag..._placement_new
espace : "n'était pas strictement nécessaire; en fait, elle est là"
10. Les namespaces
http://c.developpez.com/faq/cpp/?pag...TION_namespace
liaison : "Parce que un namespace"
11. Utilisation des exceptions
http://c.developpez.com/faq/cpp/?pag...PTIONS_finally
lapsus : "Ainsi; on est assuré de ne pas avoir de fuite"
12. Les chaînes de caractères
http://c.developpez.com/faq/cpp/?pag...TRINGS_lenteur
grammaire : "une taille commune à toutes leur chaînes de caractères."
accent : "doit donc être faîte avec une gestion dynamique de char*,"
http://c.developpez.com/faq/cpp/?pag...har_const_char
liaison : "ce qui le précède. Si il n'y a rien avant,"
http://c.developpez.com/faq/cpp/?pag..._size_capacity
accent : "en particulier si vous faîtes un appel à reserve."
http://c.developpez.com/faq/cpp/?pag...ion_c_str_data
espace "celui-ci de pointer vers une copie créée pour l'occasion!"
http://c.developpez.com/faq/cpp/?pag...RINGS_dont_use
lapsus : "à le faire qu'on on crée sa propre classe exception."
13.
http://c.developpez.com/faq/cpp/?pag...stream_iomanip
conjugaison : "en notation scientifique (oppose de fixed)"
13.1. Manipulation de la console
http://c.developpez.com/faq/cpp/?pag...le#SL_iostream
ellipse : "encore présent que dans un but compatibilité."
http://c.developpez.com/faq/cpp/?pag...sing_namespace
lapsus : "les fichiers d'entêtes, ainsi que des les cas où il génère"
14. Les templates
http://c.developpez.com/faq/cpp/?pag...#TEMPLATES_def
répétition : "pointeur, ...) ou un même un autre template."
(inversion : "celle-ci n'existe en réalité pas dans le code compilé,")
http://c.developpez.com/faq/cpp/?pag...S_creation_fct
espace : "nommé T grâce aux mots clés template et typename:"
espace : "pas de problèmes, mais prenons l'exemple suivant:"
espace : "émettent un message d'erreur assez explicite:"
http://c.developpez.com/faq/cpp/?pag...creation_class
espace : "voici un exemple illustrant leur écriture:"
http://c.developpez.com/faq/cpp/?pag...PLATES_typedef
espace : "consiste à utiliser une struct template:"
16. Boost
http://c.developpez.com/faq/cpp/?pag...oost_smart_ptr
espace : "fonctionnant par comptage de référence:"
espace : "s'il est compilé pour ne pas ignorer les assertions:"
--> difficultés de code :
8.2. La surcharge d'opérateurs
http://c.developpez.com/faq/cpp/?pag...URCHARGE_pp_mm
difficulté : "z = x++; // z sera la nouvelle valeur de x"
proposition : "z = x++; // z aura la nouvelle valeur de x"
14. Les templates :
http://c.developpez.com/faq/cpp/?pag...PLATES_typedef
difficulté : "typedef std::vector<T> type;"
proposition : "typedef typename std::vector<T> type;"