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 :

probleme avec copy constructor


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 28
    Points
    28
    Par défaut probleme avec copy constructor
    bonjour a tous,..

    je me tourne vers vous car je me trouve face a un problème de copy constructor que je n'arrive pas a résoudre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Control^ mCtrl;		
    		Aka::FM* nativeCtrl = NM->createFM(NativeCtrlName,W,H,IsT,argVal, (gr::TPtr)mCtrl->WT, (unsigned int)mCtrl->Panel->Left, (unsigned int)mCtrl->Panel->Top);
    		mCtrl = gcnew Control (nativeCtrl);
    comment me sortir de cette erreur,...

    de copy cosntructor,...

    une idée,...

    merci de votre compréhension,...

  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 519
    Points
    41 519
    Par défaut
    Pour que je puisse diviner le message d'erreur, je te demande de choisir quatre cartes.

    Ou bien, tu peux me dire toi-même quelle erreur tu as, ce qui sera probablement plus fiable.
    Et aussi, fournir le reste du code.
    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
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 28
    Points
    28
    Par défaut
    désolé j'ai omis,...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Control class does not have a copy-constructor
    pour ce qui est du reste du code,...il y en a un petit paquet ,...quelle partie pourrait t' interesser,...

  4. #4
    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 519
    Points
    41 519
    Par défaut
    Cette classe, c'est System::Windows::Forms::Control? Si oui, j'ai du mal à piger ce que tu cherches à faire.
    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
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 28
    Points
    28
    Par défaut
    Non non,..du tout,...

    en fait j'essaye d’intégrer du flash en material pour Mogre ,...wrapper sous c# tirer de Ogre 3d engine

    Ogre:
    http://www.ogre3d.org/


    Mogre:
    http://www.ogre3d.org/addonforums/viewforum.php?f=8


    en clair,...


    MakaruiManager.cpp


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    Makarui::FlashControl^	MakaruiManager::CreateFlashMaterial(System::String^ Name, int Width, int Height,bool IsTransparent)
    {
     
    Ogre::String NativeCtrlName;
    Utilities::GetNativeString(NativeCtrlName,Name);
     
    Akarui::FlashMovie* nativeCtrl = NativeManager->createFlashMovie(NativeCtrlName,Width,Height,IsTransparent,Akarui::FlashOptions());
    FlashControl^ ManagedCtrl = gcnew FlashControl(nativeCtrl,Name,nullptr);
    return nullptr;
    }




    avec akarui.h
    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
     
    #ifndef __Akarui_H__
    #define __Akarui_H__
     
    #include "PreCompiled.h"
     
    namespace Akarui {
     
    class _AkaruiExport AkaruiManager
    {
    public:
    	AkaruiManager(const std::string& baseDirectory, HWND winHandle);
    	~AkaruiManager();
     
    	static AkaruiManager* getSingleton();
     
    	FlashMovie* createFlashMovie(const std::string& source, int width, int height, bool isTransparent, const FlashOptions& options, Ogre::TexturePtr webTexture,int left, int top);
     
    	void destroyFlashMovie(FlashMovie* movie);
     
    	void update();
     
    protected:
    	std::vector<FlashMovie*> movies;
    	std::string baseDirectory;
    	HWND winHandle;
    	static AkaruiManager* instance;
    };
     
    }
     
    #endif
    ce serait vraiment super d'y arriver,...

  6. #6
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 28
    Points
    28
    Par défaut
    modus operandi

    pour builder mogre,...

    https://bitbucket.org/mogre/mogre/sr...txt?at=default

    Instructions (all commands are to be run on the command line)
    1. Create target directory and "cd" into it.
    2. Clone Mogre: "hg clone http://bitbucket.org/mogre/mogre Mogre".
    3. Clone Ogre 1.7: "hg clone http://bitbucket.org/sinbad/ogre -u v1-7 Mogre\Main\OgreSrc\ogre".
    4. Clone Ogre dependencies: "hg clone https://bitbucket.org/cabalistic/ogredeps Mogre\Main\OgreSrc\ogre\Dependencies".
    5. Apply Ogre patch: "patch.exe -p0 -i "..\..\Ogre Patches\mogre-1.7.3-clrobject.patch" -d Mogre\Main\OgreSrc\ogre"
    (make sure patch.exe is on your system PATH or specify path to patch.exe)
    6. Start CMake GUI to generate Ogre build files.
    * Set "Where is the source code:" field to "C:\your_target_directory\Mogre\Main\OgreSrc\ogre"
    * Set "Where to build the binaries:" field to "C:\your_target_directory\Mogre\Main\OgreSrc\build" (directory does not exist yet)
    * Check the "Advanced" checkbox.
    * Press "Configure" button
    * Say yes if CMake asks to create build directory
    * Select "Visual Studio 10" (= Visual Studio 2010), "Visual Studio 11" (= Visual Studio 2012) according to your installed version.
    Select the "Win64" ones if you want to build the x64 version.
    * CMake will run and stop with an error message (this is expected!).
    * Press "Configure" again. CMake will now run successfully, the last line in the log window will read "Configuring done".
    * Set the following options:
    - OGRE_CONFIG_ENABLE_PVRTC = On
    - OGRE_CONFIG_CONTAINERS_USE_CUSTOM_ALLOCATOR = Off
    - OGRE_BUILD_TOOLS = Off
    - OGRE_BUILD_SAMPLES = Off
    - OGREDEPS_BUILD_OIS = Off
    - CMAKE_CONFIGURATION_TYPES = Debug;Release
    * Press "Configure" one last time. Again the last line in the log window will read "Configuring done".
    * Press "Generate" button. The last line in the log window will now read "Generating done".
    * Close CMake GUI
    7. Change to cpp2java folder: "cd Mogre\Codegen\cpp2java"
    8. Execute build.bat: "build.bat"
    9. Change back to target folder: "cd ..\..\.."
    10. Open solution "Mogre\Codegen\AutoWrap\AutoWrap_vs2010.sln" (will work in VS 2012 too)
    11. Compile an run the project.
    12. From within VS run AutoWrap, click "Produce", wait until "OK", close AutoWrap and Visual Studio
    13. Apply Cygon's patch: "patch.exe -p0 -i "..\..\Ogre Patches\mogre-1.7.3-cygon.patch" -d Mogre"
    (Cygon's patch is optional but it contains optimizations resulting in smaller and therefore faster binaries)
    14. Open solution "Mogre\Main\OgreSrc\build\OGRE.sln" in Visual Studio.
    15. In the solution explorer open the file "OgreMain/Header Files/CLRConfig.h" and change "#define LINK_TO_MOGRE 1" to "#define LINK_TO_MOGRE 0".
    16. Select "Debug" or "Release" configuration in the toolbar.
    17. In the solution explorer right click ALL_BUILD, select "Rebuild" and wait (can last 1-2 hours)
    18. Open solution "Mogre\Main\Mogre_vs2010.sln" or "Mogre\Main\Mogre_vs2012.sln" (according to your VS version).
    20. In solution explorer right click "Mogre" and select "Configuration Manager".
    21. Select active configuration (Debug/Release) and platform (Win32/x64).
    22. In solution explorer right click "Mogre" and select "Rebuild".
    23. Open solution "Mogre\Main\OgreSrc\build\OGRE.sln" again.
    24. In the solution explorer open the file "OgreMain/Header Files/CLRConfig.h" again and change "#define LINK_TO_MOGRE" back to 1.
    25. Right click ALL_BUILD again, select "Build" this time (don't select "Rebuild", it will take much longer).
    26. Copy all files from "Mogre\Main\OgreSrc\build\bin" and "Mogre\Main\lib" next to each other in a single folder.
    makarui source,...

    https://bitbucket.org/mogre/mogreaddons/src

    dependance pour akarui,...

    Npapi-headers :http://code.google.com/p/npapi-headers/

    ....

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 071
    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 071
    Points : 12 116
    Points
    12 116
    Par défaut
    C'est un Control ou un FlashControl ?
    T'as 2 sources différents.

  8. #8
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 28
    Points
    28
    Par défaut
    Salut,..

    et merci de t'intéresser à ce cas,...

    en fait il y en a 3 makarui ,.. akarui,... et npapi

    akarui repose sur npapi et makarui est une implémentation d'akarui pour Mogre qui lui est un wrapper c# pour Ogre,...

    en fait
    il y a un CreateFlashOverlay qui place un flashmovie dans un overlay,...ce qui semble fonctionner
    il y a un CreateFlashMaterial qui crée un material avec le flashmovie pour l'appliquer par exemple sur un plan dans le monde 3d,.. contrairement à l'overlay 2d

    c'est CreateFlashMaterial qui doit être codé,...

  9. #9
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 071
    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 071
    Points : 12 116
    Points
    12 116
    Par défaut
    J'ai rien compris.
    Pouvez-vous reprendre depuis le début avec le code qui pose problème et le problème ?

  10. #10
    Nouveau membre du Club
    Inscrit en
    Janvier 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 39
    Points : 28
    Points
    28
    Par défaut
    Bonjour ,...

    désolé pour le délais de réponse,...

    et encore une fois désolé pour l'expression un tantinet brouillonne,...

    pour résumer,... mon but est d’intégrer du flash dans Mogre un moteur 3 d en c#

    après avoir mis les main dans le cambouis d'hikarui et makarui,...

    mis a part en overlay,...on ne sait pas mettre texturer un material avec du flash,...

    mais une autre solution se profile,...

    encore merci pour vos interventions,...

  11. #11
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    Bref, tu demandes sur le forum C++ comment insérer du flash dans une application C#?
    Je comprends qu'on ait un peu de mal à te répondre.
    Tu as demandé sur le forum C#?
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  12. #12
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 071
    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 071
    Points : 12 116
    Points
    12 116
    Par défaut
    .NET, ça veut pas dire C#, le C++/CLI, c'est du C++.

  13. #13
    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 519
    Points
    41 519
    Par défaut
    Je ne suis pas forcément d'accord, pour moi le C++/CLI est autant du C++ que le C++ est du C.

    (Mais je n'ai pas pour autant mis de pouce bas pour ça, il doit venir de quelqu'un d'autre. Après tout, je suis d'accord sur le fait que .Net ne se limite pas à C#)
    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.

  14. #14
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    et "Mogre un moteur 3 d en c#", pour moi, ça veut dire du C#
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  15. #15
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 071
    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 071
    Points : 12 116
    Points
    12 116
    Par défaut
    Le M de Mogre, c'est pour Managed pas pour "MC#".

    En .NET, que le wrapping soit implémenté en C#, VB.NET, IronPython, en F# ou en Klingon.NET, on s'en fout, c'est accessible par tout langage .NET, C++/CLI compris.

    De plus, vu que le code à wrapper est en C++, c'est pas de masos, ils les ont fait en C++/CLI, les wrappers.

    Vérification faite sur http://www.ogre3d.org/tikiwiki/MOGRE :
    The "glue" code between C++ and .NET is developed using C++/CLI, which offers great flexibility and low-level control of how the wrapping should work.

    On a donc un code core en C++, des couche de wrapping en C++/CLI et le code du PO est en C++/CLI.

    leternel, il n'y a donc aucune trace de C# dans le scope.
    C'est un peu dire que Qt, c'est du Python juste parce qu'il existe un binding pour Python de Qt.

  16. #16
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Points : 4 637
    Points
    4 637
    Par défaut
    Citation Envoyé par bacelar Voir le message
    leternel, il n'y a donc aucune trace de C# dans le scope.
    Dans le message du PO :

    mon but est d’intégrer du flash dans Mogre un moteur 3 d en c#
    Après ça ne change rien sur le fait que le binding sera accessible à tous les langages .Net, nous sommes d'accord.

Discussions similaires

  1. Probleme avec copy past
    Par tamtam64 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/05/2015, 23h22
  2. [C#]Probleme avec Copy de fichier
    Par kekesilo dans le forum Windows Forms
    Réponses: 4
    Dernier message: 10/12/2007, 21h15
  3. [XSLT] problème avec copy-of
    Par ploxien dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 17/10/2006, 14h03
  4. [Tableau]Problèmes avec copie de tableau
    Par Itachi-san dans le forum Collection et Stream
    Réponses: 13
    Dernier message: 25/11/2005, 17h23
  5. [debutant]probleme avec le copy constructor
    Par Battosaiii dans le forum Débuter
    Réponses: 10
    Dernier message: 09/11/2005, 10h33

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