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 :

des résultats de methode incohérents


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 des résultats de methode incohérents
    Bonjour,
    J'ai un résultat de la méthode find qui me correspond pas à mon attente.
    J'ai le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    		mpos = wsChunk.find( L"or +APC or ");
    		pos = wsChunk.find( L"+APC or ");
    et avec la donnée wsChunk = {"+APC or "}
    je récupère mpos = 0 et pos = 0
    J'attedais mpos = -1 et pos = 0
    et avec le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    		mpos = wsChunk.find( L"OFF or +APC or ");
    		pos = wsChunk.find( L"+APC or ");
    avec la donnée wsChunk = {", either OFF or +APC or +DEM "}
    J'attendais mpos = 10 et j'obtiens mpos = -1
    qui m'aidera sera :ccool;

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    wsChunk est une std::wstring?
    Je suppose que le contenu que tu indiques est ce que te donne le debugger pile sur la ligne de l'appel à find()?
    Le code n'est pas multi-threadé, au moins?

    PS: Dans le second cas, mpos devrait être 9, pas 10.
    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.

  3. #3
    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 Je na sais pas
    Je na sais pas si le code est multi threadé Je pense que oui pour les affichage mais pas pour le code
    wsChunk est bien une std::wstring
    c'est bien ce que donne le déboguer sur la ligne

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    Vérifie la longueur indiquée pour la chaîne, des fois qu'il y ait un caractère invisible (d'un autre côté, ça n'explique pas le premier résultat...).
    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.

  5. #5
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    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 395
    Par défaut
    Autre chose: S'agit-il de chaînes sur lesquelles tu obtiens, à un moment ou un autre, un pointeur non-const?
    Car si oui, "all bets are off" et je ne réponds plus de rien.
    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
    J'ai des comportement plus précis:
    quand je passe sur mpos j'ai la valeur mpos = -1
    quand je passe sur pos j'ai la valeur pos = 16 et mpos = 16
    comment se fait il que le resultat de pos se reporte sur la valeur de mpos
    j'ai essayé d'inverser les instructions
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    		pos = wsChunk.find( L"+APC or ");
    		mpos = wsChunk.find( L"or +APC or ");
    a l'entrée pos et mpos ont la valeur -1
    quand je passe sur pos j'ai pos = 16 ce qui est cohérent
    quant je passe sur mpos j'ai mpos = 16 pou 13 attendu
    avec la valeur wsChunk = {", either OFF or +APC or +DEM "}

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

Discussions similaires

  1. remplir une table en fonction des résultats
    Par Psychomantis dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 19/10/2004, 12h22
  2. DBCC SQLPERF ( LOGSPACE ) Interprétation des résultats
    Par Labienus dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 20/07/2004, 15h50
  3. Grouper et concatener des résultats
    Par Koo dans le forum Langage SQL
    Réponses: 3
    Dernier message: 07/07/2004, 10h09
  4. Select, union, éliminer des résultats.
    Par franculo_caoulene dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 10/06/2004, 09h42
  5. Réponses: 3
    Dernier message: 18/05/2003, 00h16

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