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

VC++ .NET Discussion :

[C++.NET] Erreur de conversion


Sujet :

VC++ .NET

  1. #1
    Membre confirmé
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par défaut [C++.NET] Erreur de conversion
    Bonjour tout le monde,
    Lors de la compilation de mon appli j'ai cet erreur qui arrive:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    '=' : impossible de convertir de 'System::Object __gc*' en 'float *'
    Je n'arrive pas a resoudre l'erreur si vous avez une idee. Voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    private:
     void Recup_data(DataSet* myDataSet){
     
         int i=0;
         float tab_recup __gc[] = new float __gc[10];
        // For each table in the DataSet, print the values of each row.
     
        System::Collections::IEnumerator* myEnum = myDataSet->Tables->GetEnumerator();
        while (myEnum->MoveNext())
        {
           DataTable* thisTable = __try_cast<DataTable*>(myEnum->Current);
           // For each row, print the values of each column.
           System::Collections::IEnumerator* myEnum1 = thisTable->Rows->GetEnumerator();
           while (myEnum1->MoveNext())
           {
              DataRow* myRow = __try_cast<DataRow*>(myEnum1->Current);
              System::Collections::IEnumerator* myEnum2 = thisTable->Columns->GetEnumerator();
              while (myEnum2->MoveNext())
              {
                 DataColumn* myCol = __try_cast<DataColumn*>(myEnum2->Current);
     
                 tab_recup[i]=(myRow->Item[myCol]);
                 i++;
              }
            }
        }
     }
    J'ai une autre petite question aussi vraiment toutes betes le 10 qui se trouve entre [] definit bien le nombre de cases de mon tableau?

    Merci @++

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Par défaut
    Je pense que ton erreur est sur cette ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    float tab_recup __gc[] = new float __gc[10];
    J'y connais rien en C++ mais je pense qu'il faudrait mettre un truc du genre:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    float tab_recup __gc[] = new float[10];

  3. #3
    Membre confirmé
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par défaut
    Non desole ca ne change rien, si ca rajoute une 2eme erreur lol.
    Mais merci quand meme.

  4. #4
    Membre confirmé
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par défaut
    Apres avoir chercher mon probleme serait lie a cette ligne la aussi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    tab_recup[i]=(myRow->Item[myCol]);
    Avec comme declaration ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <div style="text-align: left;">float tab_recup __gc[] = new float __gc[10];</div>

  5. #5
    Membre actif Avatar de netomin
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Par défaut
    Lors de la compilation de mon appli j'ai cet erreur qui arrive:
    Code :
    '=' : impossible de convertir de 'System::Object __gc*' en 'float *'

    Je n'arrive pas a resoudre l'erreur si vous avez une idee.
    Une idée: T'a pensé à ajouter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    #include "stdafx.h"
    
    Tout au début de ta feuille de code?

  6. #6
    Membre confirmé
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par défaut
    Je viens de le rajouter et toujours la meme erreur. Arf

  7. #7
    Membre actif Avatar de netomin
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Par défaut
    T'a combien d'erreurs? Une seule?
    Je ne suis pas un pro en c++ mais je pense que comme tu as dit c'est cette ligne qui doit te donner l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <div style="text-align: left;">tab_recup[i]=(myRow->Item[myCol]);</div>
    et je crois que c'est parce que myRow->Item[myCol] n'est pas un float.

    Cherche la doc C++ pour faire un cast à float.

    Par contre ta déclaration je crois qu'elle est bien faite.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    float tab_recup __gc[] = new float __gc[10];
    Regarde ce lien peut être ça va t'aider:
    http://www.codeproject.com/managedcpp/castingbasics.asp

    ou la FAQC++:
    http://c.developpez.com/faq/cpp/

    à +

  8. #8
    Membre confirmé
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par défaut
    Alors que je declare en int float string ou autre il me dit que la conversion n'est pas possible....... Je desespere.

  9. #9
    Membre actif Avatar de netomin
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Par défaut
    Essai ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    tab_recup[i]=*dynamic_cast<__box float*>(myRow->Item[myCol]->ToString());
    
    Je crois que ça marche.

    à +

  10. #10
    Membre confirmé
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    122
    Détails du profil
    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 122
    Par défaut
    Oui merci nikel ca fonctionne Merci tu me sors de ma galere.

  11. #11
    Membre actif Avatar de netomin
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 81
    Par défaut
    De rien , mais je t'avais dis de chercher à faire un casting.

    à +

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB.Net] Erreur de conversion de type
    Par Khalid.bounouader dans le forum Accès aux données
    Réponses: 6
    Dernier message: 13/11/2006, 21h57
  2. [VB.NET] Erreur OnMouseUp sur Datagrid
    Par daner06 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 19/01/2005, 10h26
  3. [VB.NET] Erreur System.InvalidCastException
    Par Hoegaarden dans le forum Windows Forms
    Réponses: 5
    Dernier message: 28/09/2004, 11h47
  4. [VB.NET] Erreur sur la creation dynamique d'une texbox
    Par headcooper dans le forum ASP.NET
    Réponses: 4
    Dernier message: 01/07/2004, 19h34
  5. [VB.NET] Erreur conversion de code c=>vb (opendialogfile)
    Par hirochirak dans le forum Windows Forms
    Réponses: 19
    Dernier message: 02/06/2004, 16h31

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