IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

RAII et exception


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut RAII et exception
    Bonjour,
    existe t'il ,en C, des outils qui fournissent
    1- des exception?
    j'ai trouvé ça pour l'instant http://www.on-time.com/ddj0011.htm

    2- une gestion de la mémoire en RAII ?
    la j'ai rien trouvé en C

    merci.

  2. #2
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par Mongaulois Voir le message
    Bonjour,
    existe t'il ,en C, des outils qui fournissent
    1- des exception?
    j'ai trouvé ça pour l'instant http://www.on-time.com/ddj0011.htm

    2- une gestion de la mémoire en RAII ?
    la j'ai rien trouvé en C
    Tu peux aussi voir ce qu'il y a dans les differents framework de Laurent Deniau (http://ldeniau.web.cern.ch/ldeniau/html/oopc.html).

  3. #3
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    merci je vais regarder

  4. #4
    Membre très actif Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Par défaut
    Bon, est-ce qu'il est vraiment judicieux d'utiliser des frameworks genre de l'OO ou les exceptions en C là ?
    Parceque franchement le C c'est le C, et on n'a pas, à ma connaissance, inventé le C++ pour les poules du voisin! si?
    Compil your life guy!
    The Aures Project

  5. #5
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    L'utilisation d'un framework OO en C plutôt que C++ peut se justifier à mon avis par les raisons suivantes:

    • Aucun compilateur n'est disponible pour la plateforme cible (ou alors un tel compilateur est inaccessible pour des questions de coûts)
    • C90 est probablement le langage le plus portable à l'heure actuelle.
    • Le langage C possède une ABI bien définie, ce qui facilite la création de passerelles (bindings) entre une bibliothèque écrite en C ou en C OO et d'autres langages.
    • Certains programmeurs utilisent le C tout simplement parce que c'est le langage qu'ils connaissent le mieux. Un framework OO leur permet alors de bénéficier des avantages que peut offrir la programmation orienté-objet, notamment au niveau de l'organisation du code.


    L'inconvénient principal que je vois concernant l'utilisation d'un framework OO particulier est que les programmeurs participant au projet devront se former sur son utilisation. Il est en effet plus facile de recruter des programmeurs possédant de l'expérience en C++ que des programmeurs ayant déjà entendu parler de ooc-2.0 ou COS. GObject jouit d'une popularité plus évidente, notamment grâce aux projets GTK+ et GNOME, mais l'utilisation de ce framework est relativement complexe.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

  6. #6
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Citation Envoyé par Goundy Voir le message
    Bon, est-ce qu'il est vraiment judicieux d'utiliser des frameworks genre de l'OO ou les exceptions en C là ?
    Parceque franchement le C c'est le C, et on n'a pas, à ma connaissance, inventé le C++ pour les poules du voisin! si?

    Pour l'OO. Ben je voit pas quoi te repondre. Tu connait Glib? Gtk+? GTS?
    C'est du C avec de l'OO ( ou j'ai peut être pas compris).
    Thierry Chappuis as bien répondu sur ce point...

    Sinon, sait tu ce qu'est le RAII ?
    Développant en C++, je vais bientôt aller sur un projet en C-objet et C++.
    Je cherche donc quelques equivalence

  7. #7
    Expert confirmé
    Avatar de Thierry Chappuis
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Mai 2005
    Messages
    3 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Suisse

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 499
    Par défaut
    Citation Envoyé par Mongaulois Voir le message
    Pour l'OO. Ben je voit pas quoi te repondre. Tu connait Glib? Gtk+? GTS?
    C'est du C avec de l'OO ( ou j'ai peut être pas compris).
    Thierry Chappuis as bien répondu sur ce point...

    Sinon, sait tu ce qu'est le RAII ?
    Développant en C++, je vais bientôt aller sur un projet en C-objet et C++.
    Je cherche donc quelques equivalence
    Je ne connais pas de moyen d'implanter RAII (Resource Acquisition Is Initialization) en C. Pour ce faire, il faudrait qu'il existe un moyen d'appeler automatiquement le destructeur d'un objet à la sortie du bloc dans lequel il a été définit. En C, l'appel d'un destructeur ne peut se faire (à ma connaissance) que de manière explicite.

    Thierry
    "The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
    "If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow

    FAQ-Python FAQ-C FAQ-C++

    +

Discussions similaires

  1. [XMLRAD] gestion des exceptions
    Par pram dans le forum XMLRAD
    Réponses: 2
    Dernier message: 28/01/2003, 17h48
  2. Exception & Try..catch
    Par PurL dans le forum C++Builder
    Réponses: 2
    Dernier message: 11/12/2002, 15h35
  3. Réponses: 3
    Dernier message: 01/11/2002, 14h30
  4. Réponses: 5
    Dernier message: 12/06/2002, 15h12
  5. c: gestion des exceptions
    Par vince_lille dans le forum C
    Réponses: 7
    Dernier message: 05/06/2002, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo