Topic de MessiTheGOTH :

BORDEL, le C++ cette merde :rire:

AVANT MÊME de parler du langage en soi, l’écosystème de l’âge de pierre GOUDJAAAAA

  • Le logiciel pour l’utiliser (visual studio) fait 10 GIGA OCTETS https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png
  • Et ton produit ne fonctionnera que sur Windows https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png
  • Enfin sur ton windows :) Si le PC du client n’a pas la même version de la runtime library ou d’une bibliothèque linkée dynamiquement, le programme plantera dès le lancement ou en plein milieu de l’exécution par hasard https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png
  • Si tu veux te passer de l'ecosysteme Microsoft ou simplement compiler pour d'autres plateformes, tu dois apprendre à utiliser CMake pour compiler ton projet et lier les fichiers entre eux, tout ça en ligne de commande https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png Sachant que CMake a son propre langage de programmation https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png
  • Les compilateurs ont des standards différents, en gros un code écrit pour le compilateur de Windows ne fonctionnera pas nécessairement pour Linux/Mac et réciproquement https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png
  • Les erreurs de compilation qui sont ILLISIBLES https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png

Et ensuite le langage https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

Voici un exemple de C++ dit moderne https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

template<typename T> auto f(T t) -> decltype(std::declval<T>().m_member, void(), true) { return true; }
https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

L'equivalent en Python :
def f(cls): return hasattr(cls, 'm_member')

En Javascript :
function hasMember(cls) { return cls.hasOwnProperty('m_member'); }

"Oui mais en C++ c'est à compile-time" https://image.noelshack.com/fichiers/2016/51/1482448857-celestinrisitas.png

Et encore je ne parle pas de la règle des 3, de la règle des 5, du multithreading avec atomic, du networking ETC ETC https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

Tous les langages évolués (Python, JavaScript) le mettent tellement à l'amende https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

Le developpeur C++ : " Z'ai fait un programme pour calculer le changement de trajectoire d'un avion quand il rencontre un nuage, 3 semaines de boulot " https://image.noelshack.com/fichiers/2016/36/1473263957-risitas33.png
Le programme : https://image.noelshack.com/fichiers/2025/24/6/1749922670-csharp-console-calculator-dividebyzero.png

Le developpeur Javascript : "J'ai fait un Twitter-like ce week-end où 90% des utilisateurs sont en réalité des IA, dont les messages sont générés en direct quand l'utilisateur clique sur un feed, je pense que ce projet a du potentiel " https://image.noelshack.com/fichiers/2022/17/2/1650928303-l-ete-approche-et-l-odeur-des-chattes-puantes-nous-enivre.png
Le programme : https://image.noelshack.com/fichiers/2025/24/6/1749922870-c7cae344.png

Je suis d'accord le C++ c'était bien de base, mais ils ont ajouté tellement de trucs que c'est incompréhensible.
Tu fais une erreur dans un soft qui utilise plein de template partout, tu comprends rien au erreurs de compilation
Le pire étant que pour les devs C++, tout est parfaitement normal https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png
S'ils voyaient ce qui se faisait ailleurs https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

Le 14 juin 2025 à 19:45:01 :
Je suis d'accord le C++ c'était bien de base, mais ils ont ajouté tellement de trucs que c'est incompréhensible.
Tu fais une erreur dans un soft qui utilise plein de template partout, tu comprends rien au erreurs de compilation

Même les static analyzers, genre clangd qui va parfois monter à 90% de CPU, ne peuvent pas t’aider quand il y a des templates dans le code. Enfin il faut lui donner des hints des classes pour lesquelles tu vas instancier ces templates https://image.noelshack.com/fichiers/2016/36/1473263957-risitas33.png

template<typename T> auto f(T t) -> decltype(std::declval<T>().m_member, void(), true) { return true; }

Quelqu'un qui confirme du nofake ?
C'est vraiment ça la synthax C++ ?

Le 24 juin 2025 à 01:11:03 gtensea a écrit :
Bah code en C# :(

J'avais vue que c'était plus rapide que le Python mais plus lent que le C++ et C

Le 24 juin 2025 à 01:11:48 :

Le 24 juin 2025 à 01:11:03 gtensea a écrit :
Bah code en C# :(

J'avais vue que c'était plus rapide que le Python mais plus lent que le C++ et C

Bah en big 2k25 pour 99% des app tu as plus besoin de perf :(
Pour les rares processus qui doivent perf les librairies que tu peux utiliser seront codées pour (en C par exemple), utilisent le GPU avec CUDA ou autre, etc... J'ai un projet où 95% du code est C# et 5% C (CUDA). Ca perf :(

Le 24 juin 2025 à 01:05:36 :
template<typename T> auto f(T t) -> decltype(std::declval<T>().m_member, void(), true) { return true; }

Quelqu'un qui confirme du nofake ?
C'est vraiment ça la synthax C++ ?

Non, je trollais. Même c'est une expression totalement valide syntaxiquement et logiquement. Mais tu trouveras peu de gens pisser ce genre de cpp https://image.noelshack.com/fichiers/2017/15/1491851452-villani-zepo.png Et t'as certainement pas besoin des templates (l'outil dont l'expression abominable que j'ai postée découle), le langage est assez riche pour que tu puisses t'en passer. Même si elles peuvent être très pratiques.

Le 24 juin 2025 à 01:11:03 :
Bah code en C# :(

'connais pas https://image.noelshack.com/fichiers/2017/15/1491851452-villani-zepo.png

la seule excuse pour utiliser ça en 2k25 c'est pour l'embarqué genre arduino, esp32 https://image.noelshack.com/fichiers/2018/29/6/1532128784-risitas33.png

Le 26 juin 2025 à 21:55:54 MessiTheGOTH a écrit :

Le 24 juin 2025 à 01:11:03 :
Bah code en C# :(

'connais pas https://image.noelshack.com/fichiers/2017/15/1491851452-villani-zepo.png

https://www.welcometothejungle.com/fr/companies/margo/jobs/commando-c-front-office-h-f_paris

https://image.noelshack.com/fichiers/2020/44/6/1604162844-jeuxvideos-com-magazinent.jpg

Le 14 juin 2025 à 19:43:51 :
AVANT MÊME de parler du langage en soi, l’écosystème de l’âge de pierre GOUDJAAAAA

  • Le logiciel pour l’utiliser (visual studio) fait 10 GIGA OCTETS https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png
  • Et ton produit ne fonctionnera que sur Windows https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png

Utulise MinGW et Visual studio code ça te fait deja <1Go et MinGW est basée sur GCC (donc compatible aussi avec MacOS et Linux) https://image.noelshack.com/fichiers/2018/27/4/1530827992-jesusreup.png

  • Enfin sur ton windows :) Si le PC du client n’a pas la même version de la runtime library ou d’une bibliothèque linkée dynamiquement, le programme plantera dès le lancement ou en plein milieu de l’exécution par hasard https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png
  • Si tu veux te passer de l'ecosysteme Microsoft ou simplement compiler pour d'autres plateformes, tu dois apprendre à utiliser CMake pour compiler ton projet et lier les fichiers entre eux, tout ça en ligne de commande https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png Sachant que CMake a son propre langage de programmation https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png

C'est un DSL assez simple et si tu veut pas t'emmerder demade a GPT https://image.noelshack.com/fichiers/2018/27/4/1530827992-jesusreup.png

  • Les compilateurs ont des standards différents, en gros un code écrit pour le compilateur de Windows ne fonctionnera pas nécessairement pour Linux/Mac et réciproquement https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png

Ne devie pas des standards ptn

  • Les erreurs de compilation qui sont ILLISIBLES https://image.noelshack.com/fichiers/2016/24/1466366197-risitas10.png

Apprends a comprendre l'ordianteur de bas niveau C++ c'est un langage de bas niveau c'est pas comme C# et python https://image.noelshack.com/fichiers/2018/27/4/1530827992-jesusreup.png

Et ensuite le langage https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

Voici un exemple de C++ dit moderne https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

template<typename T> auto f(T t) -> decltype(std::declval<T>().m_member, void(), true) { return true; }
https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

L'equivalent en Python :
def f(cls): return hasattr(cls, 'm_member')

En Javascript :
function hasMember(cls) { return cls.hasOwnProperty('m_member'); }

"Oui mais en C++ c'est à compile-time" https://image.noelshack.com/fichiers/2016/51/1482448857-celestinrisitas.png

Je te repete C++ c'est du bas niveau; essaye de faire un navigateur en JS ou en Python https://image.noelshack.com/fichiers/2018/27/4/1530827992-jesusreup.png

Et encore je ne parle pas de la règle des 3, de la règle des 5, du multithreading avec atomic, du networking ETC ETC https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

Tous les langages évolués (Python, JavaScript) le mettent tellement à l'amende https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png

Langage évoluée != Langage de haut niveau https://image.noelshack.com/fichiers/2018/27/4/1530827992-jesusreup.png

Le developpeur C++ : " Z'ai fait un programme pour calculer le changement de trajectoire d'un avion quand il rencontre un nuage, 3 semaines de boulot " https://image.noelshack.com/fichiers/2016/36/1473263957-risitas33.png
Le programme : https://image.noelshack.com/fichiers/2025/24/6/1749922670-csharp-console-calculator-dividebyzero.png

Ton exemple est en C# ducon (c'est un langage de haut niveau comme Java, et Javascript et python) et aussi le backend d'amazon est en C++ windows est en partie en C++ (l'autre c'est en C et C#) https://image.noelshack.com/fichiers/2018/27/4/1530827992-jesusreup.png

Le developpeur Javascript : "J'ai fait un Twitter-like ce week-end où 90% des utilisateurs sont en réalité des IA, dont les messages sont générés en direct quand l'utilisateur clique sur un feed, je pense que ce projet a du potentiel " https://image.noelshack.com/fichiers/2022/17/2/1650928303-l-ete-approche-et-l-odeur-des-chattes-puantes-nous-enivre.png
Le programme : https://image.noelshack.com/fichiers/2025/24/6/1749922870-c7cae344.png

Mais bordel le moteur d'IA est fait en C++ l'OS conteint du code en C++ le moteur javascript V8 est fait en C++ https://image.noelshack.com/fichiers/2018/27/4/1530827992-jesusreup.png

Mec le C++ fait tourner le monde et des tas de turcs de ta vie sans meme que tu le saches https://image.noelshack.com/fichiers/2017/12/1490480356-c.png https://image.noelshack.com/fichiers/2017/12/1490482569-plus.png https://image.noelshack.com/fichiers/2017/12/1490482569-plus.png

redstone02 :d) C'est plus tellement un langage de bas niveau, plus exclusivement en tout cas. Avec les templates, la STL, les références, les smart pointers, t'as la possibilité d'écrire du code qui est de haut niveau, c'est-à-dire avec plusieurs couches d'abstraction qui font que tu te préoccupes pas de la gestion des ressources, donc la memoire principalement, par rapport à un langage réellement de bas niveau comme le C. Après ça dépend de ce que tu fais, du secteur dans lequel tu travailles et du système pour lequel tu développes ton software.
Mais c'est sa grande force, donner autant de performances à très faible coût :ok: Par rapport au C qui est peut-être légèrement plus rapide (et par contre certainement beaucoup plus portable) mais très difficile à utiliser
Et pour les standards, parfois tu le sais juste pas.Par exemple sur MSVC tu peux déclarer comme membre d'une classe A un std::unique_ptr<B> d'une classe B qui a été forward déclarée (c'est bon, on parle chinois pour tous ceux qui ne connaissent pas le langage https://image.noelshack.com/fichiers/2018/13/4/1522325846-jesusopti.png ). Et sur GCC/Clang, non, même si je crois qu'on peut bidouiller un peu pour que ça passe.

python c'est pour les programmes bidons

si tu veux faire des gros calculs c'est poubelle

Le 26 juin 2025 à 22:52:57 :
python c'est pour les programmes bidons

si tu veux faire des gros calculs c'est poubelle

T'utilises numpy dans ce cas https://image.noelshack.com/fichiers/2017/15/1491851452-villani-zepo.png

Le logiciel pour l’utiliser (visual studio) fait 10 GIGA OCTETS

J'ai pas lu la suite go Linux

Données du topic

Auteur
MessiTheGOTH
Date de création
14 juin 2025 à 19:43:51
Nb. messages archivés
34
Nb. messages JVC
32
Voir le topic sur JVC

Afficher uniquement les messages de l'auteur du topic

En ligne sur JvArchive
JvArchive compagnon
Découvrez JvArchive compagnon, l'userscript combattant la censure abusive sur le 18-25 !