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 :

classes statiques ?


Sujet :

C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 106
    Points : 63
    Points
    63
    Par défaut classes statiques ?
    Y-a t-il un moyen en C++ de déclarer des classes statiques sans avoir a répéter X fois le mot "static" ?

    Actuellement je fais comme ca:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    class mystaticclass
    {
    static int var1;
    static int var2;
    static int var3;
    static void method1(int param1);
    static void method2(int param1);
    static void method3(int param1);
    }
    Ce n'est pas très elegant, et autant que je sache on ne peut pas écrire directement "static class mystaticclass { }".

    De plus je ne peux pas utiliser de namespace car je dérive ma classe d'une autre classe (Qt).

    Y-a t-il moyen de déclarer cette classe "static" plus globalement ?

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 298
    Points : 901
    Points
    901
    Par défaut
    Salut, pour être honnête je ne sais pas. Mais de la même manière qu'on peut faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    extern
    {
    fonction1
    fonction2
    }
    il faudrait que tu testes la solution suivante (non testée et je ne te garantis absolument pas que ça marche !)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    static
    {
    fonction1
    fonction2
    }

  3. #3
    Membre chevronné
    Avatar de Goten
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 580
    Points : 2 205
    Points
    2 205
    Par défaut
    Non tu peux pas.

  4. #4
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    De plus je ne peux pas utiliser de namespace car je dérive ma classe d'une autre classe (Qt).
    Tu crées une dérivée qui n'a que des fonctions statiques ? C'est plutôt contradictoire, l'héritage publique n'est pas fait pour ça.

    Si ce que tu veux c'est étendre la classe, alors des fonctions non-membres dans un namespace seront bien plus adaptées.

Discussions similaires

  1. Pb difficile a expliquer, classe statique
    Par seb.49 dans le forum Services Web
    Réponses: 1
    Dernier message: 29/03/2007, 16h22
  2. Tableau de constantes dans une classe statique
    Par Nico_stras dans le forum C#
    Réponses: 4
    Dernier message: 05/03/2007, 21h18
  3. Classe statique en C++ ?
    Par oodini dans le forum C++
    Réponses: 9
    Dernier message: 18/10/2006, 14h31
  4. classe statique objet
    Par drKzs dans le forum Langage
    Réponses: 8
    Dernier message: 04/09/2006, 12h58
  5. Classe statique
    Par jeje99 dans le forum Langage
    Réponses: 12
    Dernier message: 04/01/2006, 17h50

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