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++/CLI Discussion :

Test de nullptr


Sujet :

C++/CLI

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre extr�mement actif
    Profil pro
    D�veloppeur informatique
    Inscrit en
    D�cembre 2008
    Messages
    1 022
    D�tails du profil
    Informations personnelles :
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : D�cembre 2008
    Messages : 1 022
    Par d�faut Test de nullptr
    bonjour
    J'ai mis un test pour initialiser des variables( de type int)
    J'ai donc cod�
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    							if( pNewElemnt->Values[2] == nullptr)
    								pNewElemnt->Values[2] = 0;
    							if( pNewElemnt->Values[1] == nullptr)
    								pNewElemnt->Values[1] = 0;
    et le compilateur me dit
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    1>..\..\..\Linguistic\Coherence\src\BuildComponents.cpp(2558): error C2446: '=='*: pas de conversion de 'nullptr' en 'int'
    1>          nullptr ne peut être converti qu'en types pointeur ou de handles
    1>..\..\..\Linguistic\Coherence\src\BuildComponents.cpp(2560): error C2446: '=='*: pas de conversion de 'nullptr' en 'int'
    1>          nullptr ne peut être converti qu'en types pointeur ou de handles
    1>
    comment tester des valeurs non initialises?
    qui m'aidera sera

  2. #2
    Membre extr�mement actif
    Profil pro
    D�veloppeur informatique
    Inscrit en
    D�cembre 2008
    Messages
    1 022
    D�tails du profil
    Informations personnelles :
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : D�cembre 2008
    Messages : 1 022
    Par d�faut en remplacent
    En remplacent nullptr par NULL �a arrange les choses
    mais il reste des probl�mes
    le code est devenu
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    							pNewElemnt->Values[2] = gcnew Int32();
    							if( pNewElemnt->Values[2] == NULL)
    								pNewElemnt->Values[2] = 0;
    							if( pNewElemnt->Values[1] == NULL)
    								pNewElemnt->Values[1] = 0;
    							pNewObject->max = pNewElemnt->Values[2];
    							pNewObject->min = pNewElemnt->Values[1];
    et il me jette sur la premi�re instruction
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    1>..\..\..\Linguistic\Coherence\src\BuildComponents.cpp(2558): error C2440: '='*: impossible de convertir de 'System::Int32 ^' en 'int'
    1>          Aucun opérateur de conversion défini par l'utilisateur disponible, ou
    1>          Aucun contexte dans lequel cette conversion est possible

  3. #3
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Les ints ne sont pas des pointeurs. Ils ne peuvent pas �tre nullptr, mais ils peuvent �tre z�ro.

    Si tu veux des ints qui peuvent �tre null, tu peux utiliser des System::Nullable<int>.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Membre extr�mement actif
    Profil pro
    D�veloppeur informatique
    Inscrit en
    D�cembre 2008
    Messages
    1 022
    D�tails du profil
    Informations personnelles :
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : D�cembre 2008
    Messages : 1 022
    Par d�faut Merci
    Mais �a ne parle pas du gcnew?
    J'ai �ssay� System::Nullable<int>:
    le code est devenu
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    							if( pNewElemnt->Values[2] == System::Nullable<int>)
    								pNewElemnt->Values[2] = 0;
    							if( pNewElemnt->Values[1] == System::Nullable<int>)
    								pNewElemnt->Values[1] = 0;
    							pNewObject->max = pNewElemnt->Values[2];
    							pNewObject->min = pNewElemnt->Values[1];
    							pNewObject->nValue = 2;
    							pNewObject->step = 1;
    							bIsProcessed = true;
    							pRefObject = pNewObject;
    le compilateur n'a pas aim�
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    1>..\..\..\Linguistic\Coherence\src\BuildComponents.cpp(2558): error C2275: 'System::Nullable<T>'*: utilisation non conforme de ce type comme expression
    1>          with
    1>          [
    1>              T=int
    1>          ]
    1>..\..\..\Linguistic\Coherence\src\BuildComponents.cpp(2560): error C2275: 'System::Nullable<T>'*: utilisation non conforme de ce type comme expression
    1>          with
    1>          [
    1>              T=int
    1>          ]

  5. #5
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut

    Indice n�1: System::Nullable<int> est un type de donn�es. Une classe.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre extr�mement actif
    Profil pro
    D�veloppeur informatique
    Inscrit en
    D�cembre 2008
    Messages
    1 022
    D�tails du profil
    Informations personnelles :
    Localisation : France, Mayenne (Pays de la Loire)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : D�cembre 2008
    Messages : 1 022
    Par d�faut ???
    ???

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Script test de deux chaine avec if
    Par kacedda dans le forum Linux
    R�ponses: 6
    Dernier message: 02/05/2003, 15h38
  2. [XMLRAD] test de nullit�
    Par Pm dans le forum XMLRAD
    R�ponses: 5
    Dernier message: 29/11/2002, 10h57
  3. test collisions
    Par tatakinawa dans le forum OpenGL
    R�ponses: 5
    Dernier message: 08/06/2002, 06h03

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