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 :

Déclarer un objet avec Visual Studio 2010


Sujet :

C++/CLI

  1. #1
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut Déclarer un objet avec Visual Studio 2010
    Bonjour

    précédemment, pour adresser la méthode d'une classe je passais systématiquement par un objet déclaré sur cette classe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Test6::OpenAFile objOpenAFile;
    Ce qui permet ultérieurement d'adresser les méthodes de la classe par:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    objOpenAFile.InitializeComponent();
    Visual Studio 2010 traite bien l'appel mais rejette la déclaration
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    OpenAFile.cpp(4): error C3145: 'objOpenAFile' : une variable globale ou statique ne peut pas avoir de type managé 'Test6::OpenAFile'
              impossible de déclarer une variable globale ou statique, ou un membre d'un type natif faisant référence à des objets du tas gc
    OpenAFile.cpp(4): error C2039: '{dtor}' : n'est pas membre de 'System::IDisposable'
              c:\program files\reference assemblies\microsoft\framework\.netframework\v4.0\mscorlib.dll : voir la déclaration de 'System::IDisposable'
    comment faire pour déclarer un objet sur une classe et surtout comment faire pour qu'il soit bien initialisé. ce sera

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Bonsoir,

    je ne comprends pas ce que tu essayes de faire.
    une variable globale ou statique ne peut pas avoir de type managé
    http://msdn.microsoft.com/en-us/libr...(v=vs.80).aspx
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut Bonjour
    J'ai besoin d'avoir une variable qui adresse la classe. d'habitude je code:
    CestLaClasse objLaClasse;
    Visual Studio accepte bine mon objet objLaClasse et son usage
    mais il refuse la déclaration
    si je savais comment déclarer l'objet ce serait

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Je ne pense pas qu'il s'agisse d'un problème de visual, mais un souci de managé.
    Je ne connais pas le managé.
    Mais l'erreur est très claire : tu déclares ta variables dans un scope où c'est interdit.

    La 2° erreur semble indiquer que ta classe doit dériver de IDisposable.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  5. #5
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut J'ai changé la déclaration pour la mettre en managé, mais....
    ca donne cela
    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
     
                    //dans le fichier d'en tête
                    public ref class OpenAFile : public System::Windows::Forms::Form
    	{
    	public: 
    		Form^ form1;
    		Test6::OpenAFile^ objOpenAFile;
     
                    // dans le fichier de code
                    void OpenAFile(void)
    		{
    			Test6::OpenAFile::objOpenAFile = this;
    			Test6::OpenAFile::objOpenAFile.InitializeComponent();
    			//
    			//TODO: ajoutez ici le code du constructeur
    		}
    et à la compilation
    1>OpenAFile.cpp(3): error C2355: 'this'*: ne peut être référencé qu'à l'intérieur de fonctions membres non static
    OpenAFile.cpp(4): error C2228: la partie gauche de '.InitializeComponent' doit avoir un class/struct/union

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Ta classe s'apelle OpenAFile ?
    Et tu veux y mettre une fonction void OpenAFile ?!
    Une fonction qui prend le nom de la classe est un constructeur, et il ne retourne rien, et pas void.

    Pourquoi avoir un membre qui est un pointeur sur this ?! puisque tu as déjà this...

    C'est quoi test6 ? un namespace ?
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  7. #7
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut Bonjour
    Mon projet s’appelle Test6 et donc il y a un namespace généré par Visual Studio
    ma classe s'appelle OpenAFile
    Une fonction qui prend le nom de la classe est un constructeur, et il ne retourne rien, et pas void.
    mais sous VisualStudio il rejette les constructeurs qui n'ont pas void comme type

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Non, un constructeur n'a aucun type de retour.
    Et Visual, 2010 que j'utilise, ne déroge pas à cette règle.
    Si une erreur est générée sur ton constructeur c'est certainement pas à cause de son type de retour absent, qui est parmi les premières leçons de C++.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  9. #9
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut ok
    Bonjour
    J'en accepte la leçon: il va donc falloir trouver le pourquoi de la chose
    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
     
    OpenAFile.cpp(6): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque*: C++ ne prend pas en charge int par défaut
    OpenAFile.cpp(7): error C2355: 'this'*: ne peut être référencé qu'à l'intérieur de fonctions membres non static
    OpenAFile.cpp(7): error C2227: la partie gauche de '->InitializeComponent' doit pointer vers un type class/struct/union/générique
    OpenAFile.cpp(10): warning C4508: 'OpenAFile'*: la fonction doit retourner une valeur*; type de retour 'void' pris par défaut
    OpenAFile.cpp(13): error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque*: C++ ne prend pas en charge int par défaut
    OpenAFile.cpp(15): error C2355: 'this'*: ne peut être référencé qu'à l'intérieur de fonctions membres non static
    OpenAFile.cpp(15): error C2227: la partie gauche de '->form1' doit pointer vers un type class/struct/union/générique
    OpenAFile.cpp(16): error C2355: 'this'*: ne peut être référencé qu'à l'intérieur de fonctions membres non static
    OpenAFile.cpp(17): error C2228: la partie gauche de '.InitializeComponent' doit avoir un class/struct/union
    OpenAFile.cpp(21): error C2228: la partie gauche de '.textBox1' doit avoir un class/struct/union
    OpenAFile.cpp(21): error C2227: la partie gauche de '->Text' doit pointer vers un type class/struct/union/générique
    OpenAFile.cpp(22): error C2228: la partie gauche de '.textBox2' doit avoir un class/struct/union
    OpenAFile.cpp(22): error C2227: la partie gauche de '->Text' doit pointer vers un type class/struct/union/générique
    OpenAFile.cpp(23): error C2228: la partie gauche de '.textBox3' doit avoir un class/struct/union
    OpenAFile.cpp(23): error C2227: la partie gauche de '->Text' doit pointer vers un type class/struct/union/générique
    OpenAFile.cpp(24): error C2228: la partie gauche de '.textBox4' doit avoir un class/struct/union
    Je met donc la pile des erreurs: visiblement le compilateur refuse toute compilation???
    Ce serait de savoir pourquoi?

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    En général on prend les erreurs dans l'ordre, les suivantes pouvant découler des premières.

    Et la première justement
    error C4430: spécificateur de type manquant - int est pris en compte par défaut. Remarque*: C++ ne prend pas en charge int par défaut
    indique qu'un type est inconnu.
    N'ayant pas la ligne, ni l'architecture sous les yeux, difficile de dire quoi que ce soit... include, forward declaration..
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  11. #11
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut le code de la classe jusqu'à la première ligne d'erreur
    Bonjour,
    J'ai mis le début du code de la classe ci-dessous. J'ai deux constructeurs :le premier est là pour la forme, le second est celui qui doit être activé au début de la mise en place de la form.
    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
    #include "StdAfx.h"
    #include <string>
    #include "OpenAFile.h"
     
    		OpenAFile(void)
    		{
    			this->InitializeComponent();
    			//
    			//TODO: ajoutez ici le code du constructeur
    		}
     
    		OpenAFile( System::Windows::Forms::Form^ form1)
                    {
     
    			this->form1 = form1;
    Mais dès le premier constructeur l'erreur est générée

  12. #12
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Il s'agit du code que l'on trouve dans le fichier .cpp ? et non dans le header ?

    Auquel cas, quand on implémente une méthode d'une classe, on doit précéder son nom de MaClasse:: ...

    Peut-être qu'un peu de lecture ne serait pas de trop, sur ce site on trouve de nombreux cours et tutoriaux. Mais les bases ne semblent pas acquises.

    Donc oui forcément une méthode qui ne retourne rien c'est interdit, de même qu'utiliser this dans une méthode non membre.
    Mais en aucun cas le compilateur ne fera le rapprochement entre l'implémentation et la déclaration si on ne lui indique pas.
    Ce n'est pas parce que notre header porte le même nom que le fichier d'implémentation qu'ils sont liés. Et ce n'est pas parce qu'une méthode porte le même nom que c'est la même fonction.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  13. #13
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut Je sent poindre la solution
    J'ai séparé la déclaration de la classe du code; ce processus m'avait été indiqué quand j'ai commence à faire du C++.;
    Il est possible que Visual Studio refuse cette propriété, même si la déclaration de la classe comprend les type des méthodes de la classe qui sont codé dans le fichier des données.
    je le joint ci dessous. j'ai déclaré tout en public pour vérifier que la non connaissance des symboles ne venait pas de ce problème. J'attends de comprendre pour avancer.
    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    #pragma once
    #include <stdio.h>
    #include <stdlib.h>
    #include <string>
    #include "StdAfx.h"
    std::string sFileToOpen;
    std::string sPathOfTheFile;
    std::string sDiskOfTheFile;
    namespace Test6 {
    	using namespace System;
    	using namespace System::ComponentModel;
    	using namespace System::Collections;
    	using namespace System::Windows::Forms;
    	using namespace System::Data;
    	using namespace System::Drawing;
    	using namespace System::IO;
        /// <summary>
    	/// Description résumée de OpenAFile
    	/// </summary>
    	public ref class OpenAFile : public System::Windows::Forms::Form
    	{
    	public: 
    		Form^ form1;
    		Test6::OpenAFile^ objOpenAFile;
     
    		OpenAFile::OpenAFile(void);
    		OpenAFile::OpenAFile(Form^ form1);
    		void Test6::OpenAFile::InitializeComponent(void);
    		System::Void Test6::OpenAFile::button2_Click(System::Object^ sender, System::EventArgs^  e);
    		System::Void Test6::OpenAFile::button1_Click(System::Object^ sender, System::EventArgs^  e);
    		System::Void Test6::OpenAFile::button3_Click(System::Object^  sender, System::EventArgs^  e); 
    	    System::Windows::Forms::Button^			button1;
    		System::Windows::Forms::Button^			button2;
    		System::Windows::Forms::Button^			button3;
    		System::Windows::Forms::Label^			label1;
    		System::Windows::Forms::Label^			label2;
    		System::Windows::Forms::Label^			label3;
    		System::Windows::Forms::Label^			label4;
    		System::Windows::Forms::Label^			label5;
    		System::Windows::Forms::TextBox^		textBox1;
    		System::Windows::Forms::TextBox^		textBox2;
    		System::Windows::Forms::TextBox^		textBox3;
    		System::Windows::Forms::TextBox^		textBox4;
    		System::Windows::Forms::ProgressBar^	progressBar1;
    		System::Windows::Forms::OpenFileDialog^ openFileDialog1;
    		System::ComponentModel::Container^		components;
    	protected:
    		OpenAFile::~OpenAFile();
    #pragma region Windows Form Designer generated code
    		/// <summary>
    		/// Méthode requise pour la prise en charge du concepteur - ne modifiez pas
    		/// le contenu de cette méthode avec l'éditeur de code.
    		/// </summary>
    #pragma endregion
    };
    }

  14. #14
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Non, désolé tu confonds encore tout.

    Le préfixe Classe:: ne doit pas paraître dans le header... il est déjà présent...

    le header, disons toto.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    #include, define etc...
    namespace Test6
    {
      // évidémment, on est dans Test6:: ici !!!!
      class MyClass
      {
        // et fort logiquement tout ce qu'on va avoir ici est dans MyClass::, lui-même dans Test6::, donc..... on se trouve dans Test6::MyClass::
        MyClass(); // constructeur !!
        ~MyClass(); // destructeur !
        void RandomMethod(); // une méthode pourrie qui retourne rien..
      }
    }
    l'implémentation que j'ai envie d'appelé impl.cpp (et tu remarqueras que le nom du fichier header, du fichier d'implémentation, du namespace et de la classe n'ont absolument rien à voir)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #incldue "toto.h"
    namespace Test6
    {
      // il faut répéter le namespace !
      MyClass::MyClass() { } // j'implémente le constructeur de MyClass
      MyClass::~MyClass() {} // son destructeur
      void MyClass::RandomMethod() {} // ma méthode RandomMethod de MyClass
    }
    Et la ligne using namespace System; permet de ne pas répéter System:: devant chaque déclaration d'un type ou méthode venant de système.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    System::SystemType MyClass::doSmth() {...}
    // ou
    using namespace System
    SystemType MyClass::doSmth() {...}
    En guise de "solution", il y a toujours la lecture des http://cpp.developpez.com/cours/
    Franchement tu ne sembles pas posséder toutes les bases nécessaires. Et à défaut une (re)mise à niveau ne semble pas superflue.
    On a tous commencé par un hello world, avant d'imaginer le dernier logiciel multifenêtré. Avancer sur de bases astables c'est le meilleur moyen que tout s'écroule plus tard ou de brider son évolution.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  15. #15
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut D'accord
    J'étais arrivé à la même conclusion de mon coté
    il faut que tous les fichiers associés a une classe aient le même namespace

  16. #16
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par JeanNoel53 Voir le message
    il faut que tous les fichiers associés a une classe aient le même namespace
    J'ai peur de ne pas comprendre cette affirmation.

    Un fichier peut très bien être "associé" à plusieurs classes et/ou plusieurs fichiers à une même classe.
    Il faut juste garder de la cohérence entre les définitions et les implémentations.

    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
    // file headermoche.h
    namespace N1
    {
       class C1 
       {
        public:
         C1(); 
       };
       namespace N1_1
       {
          class C1_1 
          {
           public:
            C1_1(); 
            class C1_1b 
            { 
               C1_1b(); 
            }; 
          };
       }
    }
    namespace N2
    {
       class C1 
       {
        public:
         C1();
       };
       class C2
       {
        public:
         C2();
       };
    }
    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
    #include "headermoche.h"
    #include <iostream>
    namespace N1
    {
       C1::C1() { std::cout<<"N1::C1"<<std::endl; }
       namespace N1_1
       {
          C1_1::C1_1() { std::cout<<"N1::N1_1::C1_1"<<std::endl; }
          C1_1::C1_1b::C1_1b() { std::cout<<"N1::N1_1::C1_1::C1_1b"<<std::endl; }
       }
    }
    namespace N2
    {
       C1::C1() { std::cout<<"N2::C1"<<std::endl; }
       C2::C2() { std::cout<<"N2::C2"<<std::endl; }
    }
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  17. #17
    Débutant
    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
    Points : 332
    Points
    332
    Par défaut Oui
    J'ai commis un abus de langage du débutant en disant la même classe
    J'abonde donc dans votre sens.
    c'est

  18. #18
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 074
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 074
    Points : 12 120
    Points
    12 120

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

Discussions similaires

  1. [Article] Déploiement Web avec Visual Studio 2010
    Par Nicolas Esprit dans le forum Visual Studio
    Réponses: 23
    Dernier message: 15/11/2013, 10h47
  2. Réponses: 6
    Dernier message: 17/08/2010, 14h19
  3. Silverlight 3 et 4 avec Visual studio 2010
    Par miche19000 dans le forum Silverlight
    Réponses: 3
    Dernier message: 06/07/2010, 17h12

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