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 :

Initialisation du contenu d'un pointeur à partir du contenu d'un autre pointeur


Sujet :

C++

  1. #1
    Membre à l'essai
    Homme Profil pro
    Scientific consultant in spatial remote sensing
    Inscrit en
    Juillet 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Scientific consultant in spatial remote sensing
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2008
    Messages : 10
    Points : 11
    Points
    11
    Par défaut Initialisation du contenu d'un pointeur à partir du contenu d'un autre pointeur
    Bonjour,

    Je suis en train de reprendre un code en C++ dans lequel une classe de gestion de matrices possède un constructeur permettant d'initialiser la matrice à l'aide d'un tableau unidimensionnel de la façon suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    template<class datatype>
    matrice<datatype>::matrice(datatype * data, const size_t & nelems) {
     
    	this->values = new datatype[nelems];
    	for (size_t j=0;j<nelems;j++) {
    		this->values[j] = data[j];
    	}
     
    }
    Ma question est: est-il possible de remplacer le corps du constructeur et sa boucle for par la ligne suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    this->values = new datatype[nelems](*(data));
    Je précise que je ne peux (malheureusement) pas utiliser de vectors puisque je ne suis pas l'auteur du code et que j'ai besoin de l'accélérer sans pouvoir modifier fondamentalement sa nature...

    Merci par avance à qui se penchera sur ma question.

  2. #2
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Points : 15 617
    Points
    15 617
    Par défaut
    bonjour et bienvenue sur le forum

    Alors, non, la syntaxe n'est pas valide.
    Je veux juste récupérer le pointeur ? Dans ce cas :
    Par contre, tu ira probablement dans le mur si la ressources est libérée en dehors de la classe (ce qui est probable)

    Sinon, tu faire une copie ? Le code est correcte dans ce cas. A mieux, tu peux utiliser std::copy a la place de for, mais je suis pas sur que cela apporte quoi que ce soit

  3. #3
    Membre à l'essai
    Homme Profil pro
    Scientific consultant in spatial remote sensing
    Inscrit en
    Juillet 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Allemagne

    Informations professionnelles :
    Activité : Scientific consultant in spatial remote sensing
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2008
    Messages : 10
    Points : 11
    Points
    11
    Par défaut
    Arf... Je m'en doutais...
    En effet, récupérer le pointeur lui-même n'est pas envisageable.

    Merci beaucoup pour la réponse!

    Comme je ne sais pas où poser cette question, j'en profite d'avoir la "parole" ici: il y a une section qui parle de profiling dans le forum ?

  4. #4
    Inactif  


    Homme Profil pro
    Inscrit en
    Novembre 2008
    Messages
    5 288
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2008
    Messages : 5 288
    Points : 15 617
    Points
    15 617
    Par défaut
    Non, pas spécifiquement. Il y a le forum "Outils" pour parler de l'utilisation des outils de profiling (http://www.developpez.net/forums/f38...-c-cpp/autres/) ou directement dans le forum C++ ou langage pour parler des modifications pour améliorer le code

Discussions similaires

  1. [MySQL] Afficher le contenu d'une table à partir des champs d'une autre
    Par cheik_koita dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 15/03/2009, 17h55
  2. Réponses: 5
    Dernier message: 30/03/2007, 18h26
  3. Réponses: 4
    Dernier message: 15/12/2006, 21h43
  4. Ouvrir un fichier excel à partir du contenu d'une cellule
    Par Lou12 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 07/07/2006, 13h28
  5. Réponses: 5
    Dernier message: 19/06/2006, 23h22

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