Dekleration einer zusätzlichen Klasse



  • In folgender Zeile in Form1.cpp

    #include "parameter.h"
    using namespace SimPack_auto;
    
    [STAThreadAttribute]
    
    public: array<PARAMETER^>^ parameter;
    

    kommt folgende Fehlermeldung

    error C3145: 'parameter' : global or static variable may not have managed type 'cli::array<Type> ^'



  • Mach parameters zu einem Member deiner Form1 Klasse.



  • danke für die Antwort! wäre super wenn du mir da noch auf die sprünge helfen würdest...Wie mache ich parameter zum member von form1?

    Danke



  • Nichts für ungut, aber bevor du mit C++/CLI und WinForms arbeitest, solltest du ersteinmal reines C++ lernen (Du versuchst gerade einen Marathon zu laufen, kannst aber noch nichteinmal krabbeln 😉



  • hab jetzt meine PARAMETER Klasse wie folft deklariert:

    public ref struct PARAMETER : public Form1
    

    funktioniert aber trotzdem nicht...



  • Obwohl ich C++/CLI nicht die richtige Sprache halte um mit Programmieren zu beginnen oder überhaupt eine Applikation zur erstellen, bin ich nicht der Meinung, dass man zuerst C++ lernen sollte.
    Es ist eine andere Sprache und hat nicht viel gemeinsam. Wozu also C++ lernen?

    Hier zu noch der bekannte Thread für den Fragesteller:
    http://www.c-plusplus.net/forum/viewtopic-var-t-is-263084.html

    Meine Empfehlung ist ganz einfach auf C# umzusteigen.

    Simon



  • bbb schrieb:

    hab jetzt meine PARAMETER Klasse wie folft deklariert:

    public ref struct PARAMETER : public Form1
    

    funktioniert aber trotzdem nicht...

    Ist auch komplett falsch.

    Hier mal ein Ansatz:

    public ref class Form1 : public System::Windows::Forms::Form 
    { 
    private:
       array<PARAMETER^>^ parameter;
    
    public: 
      Form1(void) 
      { 
        InitializeComponent(); 
        parameter = gcnew array<PARAMETER^>(100); 
      }
    };
    


  • Danke @theta. Hab den Anatz gleich ausprobiert, aber jetzt kommt wieder folgender Fehler

    error C2065: 'PARAMETER' : undeclared identifier



  • Bei der Fehlermeldung wird die Dekleration markiert...

    public ref class Form1 : public System::Windows::Forms::Form 
    {
      private:
        array<PARAMETER^>^ parameter;
    


  • theta schrieb:

    Hier mal ein Ansatz:

    public ref class Form1 : public System::Windows::Forms::Form 
    { 
    private:
       array<PARAMETER^>^ parameter;
    
    public: 
      Form1(void) 
      { 
        InitializeComponent(); 
        parameter = gcnew array<PARAMETER^>(100); 
      }
    };
    

    Gehört dieser Ansatz in die header- oder in die cpp-Datei? Ich hab ihn in die header Datei geschrieben. Hier kann ich aber parameter.h über include nicht einbinden, oder?



  • alles klar, hab die Fehler gefunden...jetz läuft die Sache wieder!!!

    Danke für eure Ausdauernde Hilfe 😃


Anmelden zum Antworten