Comment apprendre le C++
MrPeanutbutter
2021-02-22 18:32:32
Le 22 février 2021 à 18:31:27 MrRiemann a écrit :
Le 22 février 2021 à 18:30:01 aAardvark a écrit :
Le C++ est un langage très riche
Je sais pas si faire abstraction de la POO au début est une bonne idée (par exemple en commençant plutôt par le C), mais c'est sans doute un moyen pour déjà bien acquérir les bases
Après tout dépend, tu avais déjà de bonne bases en programmation avec un langage avant ? Car ça change tout, et si c'est le cas apprendre le C++ n'a rien d'insurmontable.
Sinon effectivement ça peut en rebuter certain de commencer par un langage avec trop de concept à apprendre et à ne travailler qu'en surface
À l'été du c++ moderne apprendre le c avant le c++ est une extrêmement mauvaise idée
qu'est-ce qu'il apporte le C++ moderne ?
doggotothemoon
2021-02-22 18:32:55
Le 22 février 2021 à 18:31:52 Aigrevin a écrit :
Le 22 février 2021 à 18:29:41 TheRamech a écrit :
Le 22 février 2021 à 18:28:26 MrRiemann a écrit :
Le 22 février 2021 à 18:27:50 Aun_Khey a écrit :
Le 22 février 2021 à 18:27:00 Aigrevin a écrit :
Le C++ supporte plus que le paradigme OO déjà, ce n'est pas ce qui définit le langage. C'est un langage complexe et infiniment subtil, surtout dans les dernières versions. Je te conseille la série CPP Weekly de Jason Turner sur YouTube, ainsi que ces conférences. J'ai beaucoup plus appris par le biais des conférences (CppCon notamment) que de mes cours. Aujourd'hui on t'apprend le C++ comme du C, et c'est très grandement dommage.
C > C++, nonobstanthttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png
On oublie un free après un malloc et on se sent PROGRAMMEUR
Les pointeurs intelligents
This. Aujourd'hui, on n'utilise plus delete ou new en C++. On a juste des références et des pointeurs intelligents. Le langage évolue les kheyous
c'est faux ce que tu dis justement j'en suis aux fameux new et delete sur le cours d'openclassroomhttps://image.noelshack.com/fichiers/2016/50/1481994659-mathematicienrisitas.png
Knuckles00001
2021-02-22 18:33:06
Qui est un ghostfag et comprend ce qu'ils disent ?
GTA_NFS
2021-02-22 18:33:27
Le 22 février 2021 à 18:30:51 Aigrevin a écrit :
Le 22 février 2021 à 18:28:49 GTA_NFS a écrit :
Si tu veux apprendre la POO commences par le C# ou le JAVA
Avec le C++ tu vas galerer si tu n'as pas des solides connaissances sur la programmation, surtout pour la gestion de la mémoire et des références
Tain mais c'est pas compliqué une référence ou un pointeur, je ne comprendrai jamais ce el famoso palier de difficulté
Pour un programme de 100 lignes oui c'est facile à implementer, mais dans un projet de plusieurs dizaines de packages et de fichiers les pointeurs et l'allocation dynamique ne sont pas faciles à gérer, c'est pas pour rien qu'on a inventé le garbage collector
doggotothemoon
2021-02-22 18:34:37
à vous lire les kheyax vous êtes vraiment des pro dans le game du c++
bordel si j'étais vous j'aurais déjà repris un serveur privé WoW et je l'aurais rescripter correctement juste pour avoir ma petite communautéhttps://image.noelshack.com/fichiers/2019/20/7/1558265229-orcrisitas.png
aigrevin
2021-02-22 18:34:52
Le 22 février 2021 à 18:27:50 Aun_Khey a écrit :
Le 22 février 2021 à 18:27:00 Aigrevin a écrit :
Le C++ supporte plus que le paradigme OO déjà, ce n'est pas ce qui définit le langage. C'est un langage complexe et infiniment subtil, surtout dans les dernières versions. Je te conseille la série CPP Weekly de Jason Turner sur YouTube, ainsi que ces conférences. J'ai beaucoup plus appris par le biais des conférences (CppCon notamment) que de mes cours. Aujourd'hui on t'apprend le C++ comme du C, et c'est très grandement dommage.
C > C++, nonobstanthttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png
Clairement non. Le C c'est très "bare-metal", le C++ rajoute un degré d'abstraction incroyable dans ces dernières versions. C'est vraiment devenu un langage moins verbeux qu'avant, plus épuré et encore plus puissant. On ne se sentira jamais aussi libre en C++ que dans un autre langage
DarkPoloGang
2021-02-22 18:35:42
Le POO ahihttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.pngTu vas t'amuser
Temporaire51
2021-02-22 18:39:25
L'auteur, je te conseille de pas chercher à utiliser toutes les features du language.
Pour faire ton programme, toutes les features du C++ sont optionnelles. c-à-d qu'elles apportent de la qualité de vie pour l'écriture de ton code mais tu peux faire sans.
Bref, je te conseille de te limiter en terme de features du language.
Par exemple, tu te dit que tu n'utilises que les templates et pour le reste tu gères comme en C.
Puis tu rajoute les destructeurs, la programmation objet, ect...
Moi par exemple, j'utilise uniquement les templates pour limiter la duplication de code. Et je code comme du C sans utiliser la libraire "std" ni la programmation objet.
Bref, c'est à toi de placer le curseur en fonction de ton aisance je dirais.
TheRamech
2021-02-22 18:49:35
Le 22 février 2021 à 18:39:25 Temporaire51 a écrit :
L'auteur, je te conseille de pas chercher à utiliser toutes les features du language.
Pour faire ton programme, toutes les features du C++ sont optionnelles. c-à-d qu'elles apportent de la qualité de vie pour l'écriture de ton code mais tu peux faire sans.
Bref, je te conseille de te limiter en terme de features du language.
Par exemple, tu te dit que tu n'utilises que les templates et pour le reste tu gères comme en C.
Puis tu rajoute les destructeurs, la programmation objet, ect...
Moi par exemple, j'utilise uniquement les templates pour limiter la duplication de code. Et je code comme du C sans utiliser la libraire "std" ni la programmation objet.
Bref, c'est à toi de placer le curseur en fonction de ton aisance je dirais.
Ne pas utiliser la bibliothèque standard
Bien ton gloubi boulga C/C++
evillz
2021-02-22 19:00:29
Le 22 février 2021 à 18:34:52 Aigrevin a écrit :
Le 22 février 2021 à 18:27:50 Aun_Khey a écrit :
Le 22 février 2021 à 18:27:00 Aigrevin a écrit :
Le C++ supporte plus que le paradigme OO déjà, ce n'est pas ce qui définit le langage. C'est un langage complexe et infiniment subtil, surtout dans les dernières versions. Je te conseille la série CPP Weekly de Jason Turner sur YouTube, ainsi que ces conférences. J'ai beaucoup plus appris par le biais des conférences (CppCon notamment) que de mes cours. Aujourd'hui on t'apprend le C++ comme du C, et c'est très grandement dommage.
C > C++, nonobstanthttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png
Clairement non. Le C c'est très "bare-metal", le C++ rajoute un degré d'abstraction incroyable dans ces dernières versions. C'est vraiment devenu un langage moins verbeux qu'avant, plus épuré et encore plus puissant. On ne se sentira jamais aussi libre en C++ que dans un autre langage
Moins verbeux et épuré , sérieux ? J'ai du loupé des fonctionnalités parce que de tout les langages que j'ai utilisé c'est probablement le pire à ce niveau la. Rien que les headers c'est tellement un truc du passé.
MrRiemann
2021-02-22 19:03:54
Le 22 février 2021 à 18:32:32 MrPeanutbutter a écrit :
Le 22 février 2021 à 18:31:27 MrRiemann a écrit :
Le 22 février 2021 à 18:30:01 aAardvark a écrit :
Le C++ est un langage très riche
Je sais pas si faire abstraction de la POO au début est une bonne idée (par exemple en commençant plutôt par le C), mais c'est sans doute un moyen pour déjà bien acquérir les bases
Après tout dépend, tu avais déjà de bonne bases en programmation avec un langage avant ? Car ça change tout, et si c'est le cas apprendre le C++ n'a rien d'insurmontable.
Sinon effectivement ça peut en rebuter certain de commencer par un langage avec trop de concept à apprendre et à ne travailler qu'en surface
À l'été du c++ moderne apprendre le c avant le c++ est une extrêmement mauvaise idée
qu'est-ce qu'il apporte le C++ moderne ?
Des milliards de trucs en + , mais en gros si tu codes bien tu auras 0 fuites de mémoire , et ce grâce au RAII
Tu n'aura plus besoin de jouer avec les pointeurs ou les malloc
La memoire sera allouée et supprimé automatiquement
Si tu veux une analogie apprendre le C++98 c'est comme si tu apprenais le latin au lieu du francais pour parler couramment dans la rue
MrRiemann
2021-02-22 19:05:01
On apprend le c++ en tant que premier langage et on se sent efficace
Temporaire51
2021-02-22 19:32:11
Le 22 février 2021 à 18:49:35 TheRamech a écrit :
Le 22 février 2021 à 18:39:25 Temporaire51 a écrit :
L'auteur, je te conseille de pas chercher à utiliser toutes les features du language.
Pour faire ton programme, toutes les features du C++ sont optionnelles. c-à-d qu'elles apportent de la qualité de vie pour l'écriture de ton code mais tu peux faire sans.
Bref, je te conseille de te limiter en terme de features du language.
Par exemple, tu te dit que tu n'utilises que les templates et pour le reste tu gères comme en C.
Puis tu rajoute les destructeurs, la programmation objet, ect...
Moi par exemple, j'utilise uniquement les templates pour limiter la duplication de code. Et je code comme du C sans utiliser la libraire "std" ni la programmation objet.
Bref, c'est à toi de placer le curseur en fonction de ton aisance je dirais.
Ne pas utiliser la bibliothèque standard
Bien ton gloubi boulga C/C++
Il n'y a aucune obligation de l'utiliser
Et les conteneurs std sont implémentés en C++ hein. Les templates, l'allocation de mémoire, toussa
Jency12
2021-02-26 17:25:55
Le 22 février 2021 à 18:32:55 doggotothemoon a écrit :
Le 22 février 2021 à 18:31:52 Aigrevin a écrit :
Le 22 février 2021 à 18:29:41 TheRamech a écrit :
Le 22 février 2021 à 18:28:26 MrRiemann a écrit :
Le 22 février 2021 à 18:27:50 Aun_Khey a écrit :
Le 22 février 2021 à 18:27:00 Aigrevin a écrit :
Le C++ supporte plus que le paradigme OO déjà, ce n'est pas ce qui définit le langage. C'est un langage complexe et infiniment subtil, surtout dans les dernières versions. Je te conseille la série CPP Weekly de Jason Turner sur YouTube, ainsi que ces conférences. J'ai beaucoup plus appris par le biais des conférences (CppCon notamment) que de mes cours. Aujourd'hui on t'apprend le C++ comme du C, et c'est très grandement dommage.
C > C++, nonobstanthttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png
On oublie un free après un malloc et on se sent PROGRAMMEUR
Les pointeurs intelligents
This. Aujourd'hui, on n'utilise plus delete ou new en C++. On a juste des références et des pointeurs intelligents. Le langage évolue les kheyous
c'est faux ce que tu dis justement j'en suis aux fameux new et delete sur le cours d'openclassroomhttps://image.noelshack.com/fichiers/2016/50/1481994659-mathematicienrisitas.png
Justement, ça ne s'utilise plus en entreprise maintenant qu'il y a les pointeurs intelligents std::shared_ptr
et std::unique_ptr
qui font new
et delete
proprement.
Le C++ ne s'apprend pas en 1 mois.
En plus d'apprendre à écrire du C++ (classes, templates, STL, lambda, design patterns ...), il faut apprendre à l'écrire proprement et résoudre les problèmes obscurs que tu vas rencontrer à la compilation et à l'exécution.
J'ai vu le code d'un collègue débutant en C++, je vais lui faire quasiment tout réécrire proprement avant de valider son travail.
Ce genre de truc :
void fonction(Classe** t)
{
(*t)->nom = "Nom";
}
C'est inacceptable quand c'est ton métier.