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 :

Je ne peux pas utiliser vector sous VS2008


Sujet :

C++

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 15
    Points : 10
    Points
    10
    Par défaut Je ne peux pas utiliser vector sous VS2008
    Bonjour , j'ai rencontré un probleme , sous mon VS2008 , je ne peux pas utiliser vector . Voici mon fichier d'entête :

    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
    // stdafx.h : include file for standard system include files,
    // or project specific include files that are used frequently, but
    // are changed infrequently
    //
     
    #pragma once
     
    #include "targetver.h"
    #include <stdio.h>
    #include <stdlib.h>
    #include <iostream>
    #include <windows.h>
    #include <tchar.h>
    #include <WsdApi.h>
    #include <WsdDisco.h>
    #include <vector>
    //
     
    //#include <WsdXmldom.h>
    using namespace std;
    //#include <std::vector>
    //#include <std::string>
     
     
    // TODO: reference additional headers your program requires here
    mon code source
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    #pragma once
    #include "stdafx.h"
    
    #include "PrinterServiceTypeTypes.h"
    using namespace std;
    
    typedef struct _mydata{
    	IWSDiscoveryProvider * pProvider;
    	WSD_NAME_LIST types;
    	LPCWSTR pszTag;
    }MYDATA,*PMYDATA;
    
    class myDiscoveryProviderNotify : public IWSDiscoveryProviderNotify{
    
    	private:
    		LONG m_cRef;
    		//IWSDiscoveredService *pService;
    
    	public:
    		TCHAR sElementList[260];
    		vector <int> xadrs;		myDiscoveryProviderNotify(){};
            HRESULT STDMETHODCALLTYPE Add(IWSDiscoveredService *pService)
    		{	
    			//MessageBox(NULL,(LPCWSTR)L"OK",L"I'm ADD",MB_OK);
    			HRESULT hr = S_OK;
    			HRESULT hr_device = S_OK;
    			HRESULT hr_model = S_OK;
    			HRESULT hr_pnpx = S_OK;
    			WSD_ENDPOINT_REFERENCE* pEndpoint = NULL;
    			WSD_THIS_DEVICE_METADATA* pMetadata_device = NULL;
    			WSD_THIS_MODEL_METADATA* pMetadata_model = NULL;
    			IWSDEndpointProxy * endpointproxy = NULL;
    			IWSDDeviceProxy* pDevice = NULL;
    			hr = pService->GetEndpointReference( &pEndpoint );
    			WSD_URI_LIST * uri_list = NULL;
    			WSDXML_ELEMENT * any_model = NULL;
    			DWORD dwError = NULL;
    apres la compilation , il me retourne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    e:\projects\test_disco\test_disco\test_disco.cpp(23) : error C2143: syntax error : missing ';' before '<'
    e:\projects\test_disco\test_disco\test_disco.cpp(23) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
    e:\projects\test_disco\test_disco\test_disco.cpp(23) : error C2238: unexpected token(s) preceding ';'
    Quelqu'un sait qu'est-ce que je dois faire ?

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

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

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Déjà, un using namespace dans un .h, ce n'est pas recommandé.
    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
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    Ne manquerait-il pas un ';' à la fin de WsdDisco.h ?
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par JolyLoic Voir le message
    Ne manquerait-il pas un ';' à la fin de WsdDisco.h ?
    j'ai pas compris ce que t'as dit .... tu veux dire comme ça ?

    #include <Wsddisco.h>; ?

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 126
    Points : 149
    Points
    149
    Par défaut
    Salut,

    Tu devrais définir :
    dans ton .h (ton .cpp en aura connaissance grâce à l'include).

    Le :
    est bien placé dans le .cpp.

    A plus,
    A.
    Un ordinateur fait au bas mot 1 million d'opérations à la seconde, mais il n'a que ça à penser, aussi. (brèves de comptoirs, JM.Gourio)


  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par agamitsudo Voir le message
    Salut,

    Tu devrais définir :
    dans ton .h (ton .cpp en aura connaissance grâce à l'include).

    Le :
    est bien placé dans le .cpp.

    A plus,
    A.
    Ok , ça marche , Merci

  7. #7
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    Citation Envoyé par xyz911 Voir le message
    j'ai pas compris ce que t'as dit .... tu veux dire comme ça ?

    #include <Wsddisco.h>; ?
    Non, je veux dire qu'il y a peut être à la fin du fichier Wsddisco.h, dans son contenu, un ";" qui manque. C'est ce qu'a l'air d'indiquer ton compilateur, puisqu'il signale une telle erreur dans <vector>, qui est le fichier qui vient juste après.
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  8. #8
    Membre à l'essai
    Inscrit en
    Avril 2008
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par JolyLoic Voir le message
    Non, je veux dire qu'il y a peut être à la fin du fichier Wsddisco.h, dans son contenu, un ";" qui manque. C'est ce qu'a l'air d'indiquer ton compilateur, puisqu'il signale une telle erreur dans <vector>, qui est le fichier qui vient juste après.
    oui , je l'ai ajouter à la fin , et ça a marcher . Merci à vous .

Discussions similaires

  1. Je n'arrive pas à utiliser Vector.indexOf()
    Par popollux dans le forum Langage
    Réponses: 22
    Dernier message: 15/12/2010, 14h55
  2. Clavier : je ne peux pas utiliser l'Azerty
    Par Shirraz dans le forum Windows XP
    Réponses: 7
    Dernier message: 19/05/2009, 03h35
  3. Pourquoi je ne peux pas utiliser ArrayList ?
    Par gamisne dans le forum C#
    Réponses: 3
    Dernier message: 14/08/2008, 17h59
  4. pourquoi je ne peux pas avoir virtualbox sous ubuntu?
    Par diengsallah dans le forum Ubuntu
    Réponses: 15
    Dernier message: 21/07/2008, 13h07
  5. Réponses: 2
    Dernier message: 04/06/2008, 12h50

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