• [^] # Re: Comment ça marche ?

    Posté par . En réponse à la dépêche Al Stevens n'aime pas QT. Évalué à 5.

    malloc() c'est pour les cons qui ne savent pas gérér où placer leur données dans la mémoire.
    Bien sur que non. Ou ai-je dit cela ?
    Ce que je dit c'est que grosso-modo, on devrait trouver au moins autant de free() que de malloc dans le code. C'est très différent. Je ne suis pas contre les variables dynamiques, je suis contre les GC censés savoir mieux que le developpeur QUAND il faut libérer la mémoire. Y a une nuance.

    Qu'un ordinateur effectue un travail compliqué et repetitif à la place d'un être humain...
    Apparement, tu as besoin d'un cours sur l'optimisation:
    1er cas: le developpeur (aidé des outils automatiques qu'il veut) trouve QUAND libérer les ressources et place l'appel a la fonction free() au bon endroit dans son code.
    2ieme cas: le développeur utilise un GC pour libérer les ressources quand ils ne les utilises plus.

    conséquence:
    1er cas exécuté une seule fois pour toute.
    2ieme cas exécuté en parallèle du traitement à chaque éxécution.

    Je ne te parle pas de coder en assembleur, ou en héxa directement pendant que tu y es, mais de savoir ce que l'on fait.
    Quand je fait un malloc(), je sais a quel moment je n'aurai plus besoin de l'espace et je fais le free() qui va bien.
    A la rigueur on peut laisser l'OS nettoyer à la mort du process si la zone mémoire est utilisée pendant toute la vie du process [mais c'est crade], mais compter sur un GC je pense que c'est du gaspillage.