Rechercher : dans
Par :

TABLEAU D'objets c++ aide svp

Dernière réponse le 6 fév 2008 à 14:38:27 Flo, le 6 fév 2008 à 08:57:55 
 Signaler ce message aux modérateurs

Bonjour,
j'aimerais créer un tableau d'objets.

j'ai une classe case et j'ai instancié des objets de cette case pour créer un plateau de jeu.

mon tableau contiendra donc les cases du plateau de jeu.
je sais que je peux utiliser <vector> de la STL mais j'ai une question sur laquelle je bataille un peu, comment je fais pour récupérer les éléments des objets ??
je m'explique, chaque objet case a un numéro unique et des coordonnées, j'aimerais récupérer le numéro de la case comment puis-je faire ??

Ma classe case :
class cases
{
public:

int get_abs(int _num);
int get_ord(int num_);

protected:

int m_numero_case;
int m_x;
int m_y;

};


voila merci de votre aide et bonne journée à tous !

Configuration: Windows XP
Internet Explorer 7.0

Meilleures réponses pour « TABLEAU D'objets c++ aide svp » dans :
Les objets en langage C++ Voir La création d'objets En C++, il existe deux façons de créer des objets, c'est-à-dire d'instancier une classe : de façon statique de façon dynamique La création statique La création statique d'objets consiste à créer un objet en lui affectant un...
Les structures en langage C VoirDifférence entre une structure et un tableau Un tableau permet de regrouper des éléments de même type, c'est-à-dire codés sur le même nombre de bits et de la même façon. Toutefois, il est généralement utile de pouvoir rassembler des éléments de...
Les classes en langage C++ VoirLa notion d'objet Le langage C est un langage procédural, c'est-à-dire que c'est un langage permettant de définir des données grâce à des variables, et des traitements grâce aux fonctions. L'apport principal du langage C++ par rapport au...
Langage C - Les chaînes de caractères VoirQu'est-ce qu'une chaîne de caractères ? Une chaîne de caractères (appelée string en anglais) est une suite de caractères, c'est-à-dire un ensemble de symboles faisant partie du jeu de caractères, défini par le code ASCII. En langage C, une chaîne...

1

choubaka, le 6 fév 2008 à 09:10:40

Salut

créer une méthode publique "get" te renvoyant m_numero_case
Chouba,
Pochard d'assaut .. 

Répondre à choubaka

2

Char Snipeur, le 6 fév 2008 à 09:52:30

Pa tou compris à ton problème.
déjà, tu met tes données en public plutîot qu'en protected.
Ensuite, tu fait ton vecteur :
std::vector<cases> Plateau;
puis pour accéder à la case :
Plateau[3].m_x; ou Plateau[2].get_abs();
Voilà ce que devrai t'aider.
Salutation ! Quand on sait pas, on touche pas !JBT
Char Snipeur

Répondre à Char Snipeur

3

Flo, le 6 fév 2008 à 10:45:56

Ok merci.
mettre les attributs en public c'est jamais bon. je vais tester avec une méthode getn_numero();

Répondre à Flo

4

Char Snipeur, le 6 fév 2008 à 14:30:57

ça c'est un truc d'intégristes de la POO de pas mettre les attributs en public. Le C++ permet une grande souplesse à ce sujet, car tout dépend de ce que tu veux faire, et l'encapsulation n'est pas forcement la méthode la plus efficace et la plus naturelle.
Dans ton cas, ils sont mieux en privé, c'est clair, car leur valeur n'ont pas l'air de devoir changer.
Salutation ! Quand on sait pas, on touche pas !JBT
Char Snipeur

Répondre à Char Snipeur

5

SebManfred, le 6 fév 2008 à 14:38:02

Tu peux aussi stocker soit dans un tableau, soit dans une liste les adresses de tes objets cases, que tu créée par un new, puis que tu initialise ensuite comme tu le veux en créant les fonctions get et set qui vont bien.

Répondre à SebManfred

6

 choubaka, le 6 fév 2008 à 14:38:27

L'encapsulation c'est le BABA de la POO...

Sinon ça devient du jabol..

Chouba,
Pochard d'assaut .. 

Répondre à choubaka