• [^] # Re: C++ : RAII et programmation générique

    Posté par . En réponse à la dépêche Sortie de GCC 4.3. Évalué à 3.

    Evidemment, sans type Block comme en Smalltalk/Ruby/IO/Lisaac, t'es obligé de passer par un pointeur de fonction

    Pourquoi un pointeur de fonction ? En C, je veux bien, mais en C++ on utilisera plutot un objet pour ca.

    Quand tu écris la fonction d'intersection, tu connais pas E, tu connais pas F, et ça marche dans tout les cas

    Moui. J'ai bien l'impression que j'ecrirais ceci pour le predicate d'intersection:


    template < typename E, typename F >
    bool compare( E e, F f ) { return e == f ; }


    Je ne connais ni E, ni F, et ca marche dans tous les cas ou l'operateur de comparaison == est defini. Dans les autres, le compilateur va couiner, et c'est tres bien ainsi.

    pas en C++ parce que si ta fonction fait n'importe quoi... ça plante, et le compilateur vérifie pas

    Ah. Et dans les langage que tu cites, une fonction qui fait n'importe quoi, ca ne plante pas, et le compilateur verifie ? Pour toutes les valeurs de n'importe quoi, meme les grandes ?