Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1220 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Accesseur sur un tableau

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Accesseur sur un tableau

n°2024571
oliparcol
Murphy's Law Master
Posté le 22-09-2010 à 20:37:14  profilanswer
 

Bonjour !
 
Je débute en c++ et j'aurais aimé connaître la meilleure méthode pour faire un accesseur sur un tableau.  
 
J'ai une classe du type:
 

Class A{
protected:
int tableau[2]
}


et j'aimerais faire un accesseur sur ce tableau. En java j'aurais fait une copie et je l'aurais retourné directement mais en c++ je ne sais pas trop... En C je me serais arrangé pour ne pas avoir à faire un truc comme ça ou sinon je l'aurais encapsulé dans une struct ou j'aurais fournis un tableau à l'accesseur du style: getTableau(int * destination,int taille_tab)
 
Mais en C++ je ne sais pas quelle est la méthode la plus efficace.
 
Des idées ?
 
Merci

mood
Publicité
Posté le 22-09-2010 à 20:37:14  profilanswer
 

n°2024583
oliparcol
Murphy's Law Master
Posté le 22-09-2010 à 22:13:12  profilanswer
 

une idée de réponse peut être trouvée ici: http://www.developpez.net/forums/d [...] r-vecteur/
 
c'est avec un vecteur et pas un tableau, mais c'est assez utile

n°2024585
snafu8
Posté le 22-09-2010 à 22:17:59  profilanswer
 

Je sais pas si c'est la meilleure méthode, mais c'est comme ça que je fais.
 
 

Code :
  1. class A
  2. {
  3. private:
  4. int * tableau;
  5. public:
  6. A(int i = 5){tableau = new int[5];};
  7. int & GetCase(int rang){return tableau[rang];};
  8. };

n°2024588
Joel F
Real men use unique_ptr
Posté le 22-09-2010 à 22:58:59  profilanswer
 

tu peut renvoyer le tableau par valeur. la NRVO va se charger d'optimiser tout ça.

n°2024608
oliparcol
Murphy's Law Master
Posté le 23-09-2010 à 04:53:46  profilanswer
 

qu'est-ce que tu entends retourner le tableau par valeur ? faire comme snafu8 en enlevant le & ? (d'ailleurs, je ne vois pas trop quelle est sont utilité ici...)

n°2024620
Joel F
Real men use unique_ptr
Posté le 23-09-2010 à 08:45:48  profilanswer
 

1/ utilise std::array ou boost::array au lieu d'unt ableau nu
2/

 
Code :
  1. class A
  2. {
  3.   boost::array<int,2> const getData() const { return data; }
  4.   protected:
  5.   boost::array<int,2> data;
  6. }
 

L'article sur la (N)RVO : http://cpp-next.com/archive/2009/0 [...] -by-value/

Message cité 1 fois
Message édité par Joel F le 23-09-2010 à 08:46:24
n°2024708
oliparcol
Murphy's Law Master
Posté le 23-09-2010 à 15:06:21  profilanswer
 

okay merci

n°2024815
Glock 17Pr​o
Posté le 23-09-2010 à 22:23:07  profilanswer
 

Joel F a écrit :

1/ utilise std::array ou boost::array au lieu d'unt ableau nu
2/
 

Code :
  1. class A
  2. {
  3.   boost::array<int,2> const getData() const { return data; }
  4.   protected:
  5.   boost::array<int,2> data;
  6. }


 
L'article sur la (N)RVO : http://cpp-next.com/archive/2009/0 [...] -by-value/


 il faut tout le temps retourner par valeur et passer les arugments par valeur ?


---------------
.
n°2024825
oliparcol
Murphy's Law Master
Posté le 23-09-2010 à 23:31:20  profilanswer
 

on peut passer les paramètres par référence constante non ?

n°2024834
Joel F
Real men use unique_ptr
Posté le 24-09-2010 à 07:22:16  profilanswer
 

Comme indiqué dans les commentaires de l'article, ça dépend.
Les retours apr valeurs s'optimisent très bien tout seul
Pour les paramètres, il ne faut passer par valeur que les parametres sur lequels nous auriont fait une copie de toute façon.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Accesseur sur un tableau

 

Sujets relatifs
[Javascript] Tableau de fonctions et Array.prototypeDécouper une chaîne avec un tableau de longueur en param
Comment faire pour créer un tableau interactif?tableau JSP / Servlet
comment lire tableau html en javascript ?Les tableau en Java
problème réalisation tableau périodique tkinterTableau 2D, à 1 dimension connue et l'autre inconnue...
Tri d'objet pointé dans un tableaumacro excel - créer un tableau récapitulant les liaisons de la feuille
Plus de sujets relatifs à : Accesseur sur un tableau


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR