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

Visual Studio Discussion :

Copie des données d'un Structure


Sujet :

Visual Studio

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Copie des données d'un Structure
    Bonjour,
    J'ai un Public Structure de défini du type:
    Public Structure Route
    Dim order() As Integer
    Dim shipQty(,) As Integer
    Dim duration As Single
    Dim open As Boolean
    Dim cost As Single
    End Structure

    et j'ai les variables suivantes:
    Dim MyRoad1(,) as Route
    Dim MyRoad2(,) as Route

    J'ai besoin de copier les données de MyRoad1 dans MyRoad2. J'ai essayé un Array.Copy mais ce dernier ne fait que pointer les données de MyRoad1 vers MyRoad2 alors que MyRoad1 et MyRoad2 deviennent 2 ensembles de données distincts.
    La seule façon que j'ai trouvé de copier les données de MyRoad1 vers MyRoad2, c'est de copier les données une à une. Mon problème est que je dois copier ces données des milliers de fois. Est-ce que quelqu'un a une solution plus efficace?

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 17
    Points : 20
    Points
    20
    Par défaut
    Tu as essayé avec MyRoad2 = MyRoad1.Clone() ?

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut =
    Oui mais vb.net crée aussi un pointeur.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 21
    Points : 25
    Points
    25
    Par défaut
    Un constructeur par recopie, ça ne fonctionne pas ?
    genre (je ne connais pas VB)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim MyRoad2(,) as Route(MyRoad1)
    Et sinon, tu crées une fonction qui prend 2 Route en paramètres et te fait la copie champ à champ.
    Tu n'as plus qu'à l'appeler autant de fois que nécessaire, et ça te prend une ligne.

  5. #5
    Membre éprouvé Avatar de neptune
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 835
    Points : 958
    Points
    958
    Par défaut
    En C#,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    string[,] tab1 = new string[1,1];
    string[,] tab2 = (string[,])tab1.Clone();
     
    Console.WriteLine("{0}", Object.ReferenceEquals(tab1, tab2));
    m'affiche bien False. Donc un tableau, même à plusieurs dimensions, qui est cloné renvoit bien une nouvelle référence (un pointeur vers un objet) et pas la référence du tableau cloné.

    Reste à voir si c'est également le cas en VB.NET mais j'en suis sûr à 99,9% ;-)

Discussions similaires

  1. Réponses: 1
    Dernier message: 19/07/2008, 14h12
  2. Réponses: 1
    Dernier message: 28/08/2007, 21h13
  3. copie des données d'un champ vers un autre
    Par cvlpj dans le forum IHM
    Réponses: 10
    Dernier message: 26/12/2006, 22h15
  4. Réponses: 1
    Dernier message: 26/12/2006, 16h23
  5. Copie des données d'une table d'une base Interbase 6
    Par Djedjeridoo dans le forum InterBase
    Réponses: 6
    Dernier message: 02/02/2004, 09h39

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