begin process at 2012 05 28 04:53:13
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Abus de "protected" dans les classes ?


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

Abus de "protected" dans les classes ?

lundi 26 avril 2004 à 21:55:11 | Abus de "protected" dans les classes ?

Galmiza

Salut cher lecteur,

Voici un exemple de ce qu'on voit assez souvent dans les codes, mais dont je ne saisi pas l'utilité:



Dans une classe, protection des 3 vecteurs:

private :
D3DXVECTOR3 camera;
D3DXVECTOR3 cible;
D3DXVECTOR3 rotation;


Puis pour permettre aux fonctions n'appartenant pas a la classe d'y acceder, les fonctions publiques (dans la meme classe bien sur):

public:
D3DXVECTOR3* GetCamera(void) { return &camera;}
D3DXVECTOR3* GetCible(void) { return &cible;}
D3DXVECTOR3* GetRotation(void) { return &rotation;}


Pourquoi ne pas mettre directement les 3 vecteurs en public pour y acceder sans passer par des fonctions extravagantes ?
Quels sont les avantages des 2 metohdes ?

Comment sont compilées de telles fonctions ? Est-ce rapide de passer par elles ?


Merci
lundi 26 avril 2004 à 22:18:28 | Re : Abus de

djl


si elles sont declaré dans le corps de la classe, oui
lundi 26 avril 2004 à 22:22:12 | Re : Abus de

Galmiza

Il faut declarer le plus de variable possible en protected ?
Dans quel cas est-ce reellement avantageux ?
lundi 26 avril 2004 à 22:25:37 | Re : Abus de

djl


ben en private surtout, ca sert a cacher/interdir l'acces de cette variable a l'utilisateur, par exemple si tu fait une classe tableau il est utile de mettre sa taille en private vu que sa pourrait tt foutre en l'air si l'utilisateur y touche

tu ten sert comme une protection, quand c'est necessaire

dans un moteur 3d beaucoup de classe de soutiens on la totalité de leur attributs publique
lundi 26 avril 2004 à 23:42:26 | Re : Abus de

Galmiza

Ok merci beaucoup djl.


Cette discussion est classée dans : classe, void, return, fonctions, d3dxvector3


Répondre à ce message

Sujets en rapport avec ce message

Problème de lisibilité : Implémenter les fonctions d'une classe dans plusieurs fichiers [ par gilleshugues ] Voila je pense que ça doit être tout simple à faire . Etant habitué à VB et VFP , j'avais pour habitude de fractionner le codeen plusieurs fichiers po Utilisation de la classe CString et les fonctions associées dans une DLL [ par Warwick ] Bonjour, je souhaiterais pouvoir utiliser la classe CString dans une DLL ainsi que les fonctions du type MessageBox... Est-ce possible, car cela me g /* * Classe CWindow */ template <typename T> class CWindow: public CSingleton<T> { private: protected: GtkWidget* pwindow; public: CWindow(); void init(void); Warning de compilation - méthodes virtuelles [ par neodelphi ] Bonjour tout le monde, Je suis en train de coder une classe et j'ai besoin de définir une méthode virtuelle pure. Ma première question est quelle est Spécialisation template et fonctions inline [ par Samaths ] Bonjour à tous!Je suis nouveau sur le forum, mais je programme en C++ depuis quelques temps déjà (3 ans). Dans le cadre d'un projet (niveau universita triangle de penrose et classe [ par ichigoZ710 ] Bonjour à toutes et à tous,j'aurais aimé savoir comment commencer le début de mon code en rapport avec les triangles de penrose (un triangle de penros Problème avec les fonctions virtuelles [ par nisaloncaje ] Salut, j'utilise dans mon programme un vector qui contient plusieurs types d'objets issus d'une meme classe (class_mere) qui est abstraite. Pour la dé Problème de class [ par sran_isback ] salut! Voila j'ay crée un programme pour gerer un petit robot. Dans le principe ce robot est piloté par des ia (dans la classe ia), et une "entité s problème classe winnt.h [ par totoscill ] Bonjour,J'ai un problème avec la classe winnt.h de windows:J'essais d'ouvrir mon port série avec des fonction qui utilise DWORD.Lorsque je compile:d:\ Fonctions callback [ par neodelphi ] Bonjour tout le monde ! J'aimerai savoir s'il est possible de passé en paramètre un pointeur de méthode en précisant une instance, je m'explique: so Opérateur de comparaison dans une classe générique [ par benjiiim94 ] Bonjour, Je crois que pas mal d'infos sont dans le titre, il ne manque plus que la source de la classe : #pragma once #include "StdAfx.h" using n


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,936 sec (3)

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