begin process at 2012 05 28 20:55:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

Encapsulation


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Encapsulation

mercredi 6 octobre 2004 à 15:05:49 | Encapsulation

thiosyiasar

Salut,

Je voudrais créer une classe qui encapsule des structures et des constantes protégées ou privées

Pour pouvoir compiler, j'ai définie les constantes et les structures dans le fichier .h avant la définit de la classe.

Pour les constantes (statique), je peux les déclarer dans les membres protégés de la classe mais pas leurs donner une valeur initialie.

Si quelqu'un a juste un exemple de déclaration ou une autre alternative pour arriver au même résultat

Merci

Nico
mercredi 6 octobre 2004 à 19:27:07 | Re : Encapsulation

leprov

les statiques doivent etre initialisées ds un .cpp je crois, elles en peuvent pas etre initilisées dans un .h, mais doivent etre déclarées dans le .h (du moins il me semble, je verifie ca, et si j'ai dis une connerie je reposterais)
mercredi 6 octobre 2004 à 19:34:35 | Re : Encapsulation

leprov

bon donc je t'ai pas dis de conneries. voila un exemple tout bete:

.h:

namespace nsSdD
{
class CTeteLinkSimple
{
public:
static CTeteLinkSimple * GetTete (void) throw ();
};
}

.cpp:

{
#include "CTeteLinkSimple.h"

nsSdD::CTeteLinkSimple * nsSdD::CTeteLinkSimple::m_Tete = 0;
}

mercredi 6 octobre 2004 à 19:36:31 | Re : Encapsulation

leprov

erf me suis planté, je t'ai mis la declaration de laccesseur et pas de la variable, je te met le code correct pr le .h:

[code]
namespace nsSdD
{
class CTeteLinkSimple
{
private:
static CTeteLinkSimple * m_Tete;};
}
[\code]

jeudi 7 octobre 2004 à 12:29:05 | Re : Encapsulation

thiosyiasar

Heu... J'ai oublié de dire que je suis débutant et que je travail avec VC++6

Mais t'as réponse m'as orienté donc j'ai réussi pour une constante statique

dans le .h

class XCmcStruct
{
protected:
static const unsigned int CONST_TEST;
}


dans le .cpp

#include "XCmcStruct.h"
const unsigned int XCmcStruct::CONST_TEST = 2;


Pour la constante, c'est OK

Maintenant je voudrais que les structs définie dans le .h de ma classe ne soit pas visible en dehors de cette classe

C'est possible ?

En java on a la possiblité de créer des classes internes privées mais je préfère utiliser des structures car je n'aurais que des propriété à stocker dans ces classes

Merci et @+

Nico
jeudi 7 octobre 2004 à 13:17:16 | Re : Encapsulation

leprov

Réponse acceptée !
class A
{
private:
struct B {toutes tes def de ta struct, si ya des fonctions membres, a implementer ds ton cpp};
}

jeudi 7 octobre 2004 à 17:56:52 | Re : Encapsulation


Cette discussion est classée dans : classe, encapsulation, structures, constantes


Répondre à ce message

Sujets en rapport avec ce message

Utilisation de classe ou de structures [ par MasterShadows ] Salut à tous,Alors, jusqu'à présent je faisais ça au feeling, mais en fait il doit y avoir des raisons particulières pour les employés, quand est-ce q Structures dans une structure... [ par pollux1er ] Pollux, Thinking Of You une file Template dans un Vecteur Template [ par grand_duck ] voici le problème j'ai une classe de vecteur template et une classe de file template je voudrais mettre ma file template dans mon vecteur est-ce possi Héritage [ par Aldarek ] Bonjour à tous j'ai un petit problème, j'ai du mal à faire le lien entre deux classes Quelqu'un pourrait il m'aider? Voici le code: Manger::Manger(int Encapsuler des types Windows ? [ par tintin72 ] Bonjour, Je voudrais savoir comment faire pour encapsuler dans une classe C++ des variable de type Windows comme HWND  HDC etc.. En effet, j'essaie de Erreur de segmentation... Qu'est ce que c'est ??? :o [ par Rouliann ] Salut tout le monde j'ai un gros problème et malgré tous mes essais je n'arrive pas à le résoudre... Il n'y a pas d'erreurs à la compilation mais lors Liste STL sur une classe [ par zekicker ] Bonjour, Voilà, Je voudrai créer une liste chainée à l'aide de list de la STL. Chaque noeud doit être une classe. Je ne sais pas comment m'y prendre Surcharge de l'opérateur << [ par kenjimax ] Bonjour à tous, Je rencontre un petit probleme avec la surcharge de l'opérateur <<. Dans une classe mere, je veux afficher les caractéristiques d'un problem avec la classe TThread de BCB6 [ par hrp ] Bonjour, j'ai créé 2 applications developpées avec BCB6:server: suppervise quelques applications locales (vérifie les processus présents)client: inter STL vector et tableau [ par cybermax62 ] j'ai une petite question sur la classe template vector. je sais que c'est possible d'initiliser un vector avec un tableau point de vue C (char[]). j'a


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,359 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales