Eigenes Objekt deklarieren, wie?



  • Ich versuche grade zum ersten mal ein eigenes Objekt zu erstellen. Das ganze soll etwas zusammengesetztes aus einem Panel und einer comboBox sein.

    Wie genau kann ich das anstellen? Ich bekomms nicht hin, in meiner Class ein Objekt zu deklarieren.

    class PanelcomboBox
    {
    private:
    
    public:
       Panel= (gcnew System::Windows::Forms::Panel());
       comboBox = (gcnew System::Windows::Forms::ComboBox());
    
    };
    


  • Bitte ein Grundlagenbuch zur Sprache C++ nehmen und Kapitel 1 durchlesen.

    ref class PanelcomboBox
    {
    private:

    public:
    Panel ^ myPanel = (gcnew System::Windows::Forms::Panel());
    ComboBox ^ myComboBox = (gcnew System::Windows::Forms::ComboBox());

    };

    Diese Elemente können aber auch über den Formdesigner erzeugt werden. Ist einfacher - und man kann sich dann auch viel im InitializeComponents abschauen.



  • Wenn ich das ganze starten möchte, spuckt er diesen Fehler aus:

    "Nur statische Datenmember können innerhalb einer Verweisklasse oder eines Werttyps initialisiert werden."

    Und das für beide Objekte die ich in der Klasse unterbringen möchte. 😕



  • Die Instanziierung der Objekte gehört natürlich in den Konstruktor (oder in sonst eine Funktion). ausserhalb von Funktionen können nur statische Variablen Werte zugewiesen bekommen.

    Also z.B. so:

    ref class PanelcomboBox
    {
    public:
    PanelcomboBox()
    {
        myPanel = gcnew System::Windows::Forms::Panel();
        myComboBox = gcnew System::Windows::Forms::ComboBox();
    }
    
    Panel ^ myPanel;
    ComboBox ^ myComboBox;
    
    };
    


  • GR-Thunderstorm schrieb:

    Wenn ich das ganze starten möchte, spuckt er diesen Fehler aus:

    "Nur statische Datenmember können innerhalb einer Verweisklasse oder eines Werttyps initialisiert werden."

    Und das für beide Objekte die ich in der Klasse unterbringen möchte. 😕

    Kein Wunder, ist ja auch derselbe Code, den Du gepostet hattest. Du solltest den Rat von Knuddlbaer befolgen und C++-Grundlagen nachschlagen.



  • <a href= http://hala



  • LordJaxom schrieb:

    GR-Thunderstorm schrieb:

    Wenn ich das ganze starten möchte, spuckt er diesen Fehler aus:

    "Nur statische Datenmember können innerhalb einer Verweisklasse oder eines Werttyps initialisiert werden."

    Und das für beide Objekte die ich in der Klasse unterbringen möchte. 😕

    Kein Wunder, ist ja auch derselbe Code, den Du gepostet hattest. Du solltest den Rat von Knuddlbaer befolgen und C++-Grundlagen nachschlagen.

    Wenn du tatsächlich mit C++/CLI einsteigen willst (was du natürlich machen kannst, doch es ist IMHO so ziemlich das härteste, was du tun kannst), dann kannst du zuerst mit dem Form Editor arbeiten, und versuchen, den Code zu verstehen (das habe ich seinerzeit mit Managed C++ gemacht, weil ich kein Buch kaufen wollte. Ich hatte allerdings den Vorteil, dass ich .NET schon intus hatte ;)). Die ersten Paar Monate werden ziemlich frustrierend sein, doch wenn du es einmal verstanden hast, dann ist es okay (allerdings musst du ziemlich verbissen dran bleiben, sonst schaffst du das nicht). Nebenbei solltest du aber unbedingt auch ein Grundlagenbuch für C++ lesen. C++/CLI lernst du damit aber auch nur zur Hälfte.

    MfG



  • /rant/ schrieb:

    Nebenbei solltest du aber unbedingt auch ein Grundlagenbuch für C++ lesen. C++/CLI lernst du damit aber auch nur zur Hälfte.

    umgekehrt aber auch, wer zuerst C++/CLI kann tut sich mit C++ schwer, so gehts mir 😃



  • /rant/ schrieb:

    (das habe ich seinerzeit mit Managed C++ gemacht, weil ich kein Buch kaufen wollte. Ich hatte allerdings den Vorteil, dass ich .NET schon intus hatte ;))
    MfG

    Lies Dir den Satz nochmal selber durch. Und erkläre uns allen dann mal, was der Unterschied zwischen Managed C++ und C++/CLI ist. 🙄



  • Wo ist das Problem mit dem Satz ?!



  • @Hase Hei

    Managed Extensions for C++ (kurz: Managed C++):
    http://en.wikipedia.org/wiki/Managed_Extensions_for_C%2B%2B

    C++/CLI:
    http://de.wikipedia.org/wiki/C%2B%2B/CLI

    Simon



  • <a href= http://cat



  • <a href



  • <a href=


Anmelden zum Antworten