Hilfe! Warum Syntaxfehler???



  • Hallo Leute

    Bin gerade bei den Exceptions und wundere mich über diese Fehlermeldung. Hier mein bis jetzt entstandener Code:

    Void checkZahl (textBoxZahl1 ^box1, textBoxZahl2 ^box2)
    		 {
    			 Int32 zahl1, zahl2, ergebnis = 0;
    
    			 Boolean divDurchNull = false;
    
    			 try
    			 {
    				 zahl1 = Convert::ToInt32(box1 -> Text);
    
    				 try
    				 {
    					 zahl2 = Convert::ToInt32(box2 -> Text);
    				 }
    
    				 catch (FormatExceptin^)
    				 {
    					 MassageBox::Show("Bei der Konvertierung ist ein Fehler aufgetreten. ", box2);
    					 box2 -> Select();
    				 }
    
    			 }
    			 catch(FormatExceptin^)
    			 {
    				 MassageBox::Show("Bei der Konvertierung ist ein Fehler aufgetreten. ", box1);
    				 box1 -> Select();
    			 }
    
    			 catch(...)
    			 {
    				 MassageBox::Show("Ein anderer, nicht definierter Fehler ist aufgetreten.", "Au weiher!");
    			 }
    

    Und das hier sind die Fehlermeldungen. Mich interessiert vor allen Dingen der Syntax Fehler. Meine beiden Textboxen heißen textBoxZahl1 und textBoxZahl2. Warum der Syntaxfehler? (Auch mit nur TextBox)

    1>------ Erstellen gestartet: Projekt: Testrechner, Konfiguration: Debug Win32 ------
    1> Testrechner.cpp
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(298): error C2061: Syntaxfehler: Bezeichner 'textBoxZahl1'
    1>Testrechner.cpp(6): error C2143: Syntaxfehler: Es fehlt ';' vor 'using'
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(306): error C2065: 'box1': nichtdeklarierter Bezeichner
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(306): error C2227: Links von "->Text" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    1> Typ ist ''unknown-type''
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(310): error C2065: 'box2': nichtdeklarierter Bezeichner
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(310): error C2227: Links von "->Text" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    1> Typ ist ''unknown-type''
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(313): error C2061: Syntaxfehler: Bezeichner 'FormatExceptin'
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(313): error C2310: catch-Handler muss einen Typ angeben
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(315): error C2653: 'MassageBox': Keine Klasse oder Namespace
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(315): error C2065: 'box2': nichtdeklarierter Bezeichner
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(316): error C2065: 'box2': nichtdeklarierter Bezeichner
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(316): error C2227: Links von "->Select" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    1> Typ ist ''unknown-type''
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(319): error C2317: Der 'try'-Block ab Zeile '309' besitzt keine catch-Handler
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(320): error C2061: Syntaxfehler: Bezeichner 'FormatExceptin'
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(320): error C2310: catch-Handler muss einen Typ angeben
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(322): error C2653: 'MassageBox': Keine Klasse oder Namespace
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(322): error C2065: 'box1': nichtdeklarierter Bezeichner
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(323): error C2065: 'box1': nichtdeklarierter Bezeichner
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(323): error C2227: Links von "->Select" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
    1> Typ ist ''unknown-type''
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(328): error C2653: 'MassageBox': Keine Klasse oder Namespace
    1>c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(328): error C2661: 'System::Windows::Forms::Control::Show': Keine überladene Funktion akzeptiert 2 Argumente
    1>Testrechner.cpp(19): fatal error C1075: Dateiende erreicht, bevor das zugehörige Element für das linke Element Klammer "{" in "c:\users\lehwald\desktop\c++_cli\cpbs 12c\hausaufgabe\taschenrechner 2\testrechner\testrechner\Form1.h(3)" gefunden wurde
    ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

    Lieben Dank für Eure Hilfe

    champmann



  • Void checkZahl (textBoxZahl1 ^box1, textBoxZahl2 ^box2)
    

    Was ist hier der Typ? textBoxZahl1 ist doch sicher kein Datentyp, sondern ein Bezeichner von dir, genau wie box1. Schau dir noch mal an, wie Funktionen aussehen.

    EDIT: Und hierüber

    MassageBox
    

    müssen wir nicht wirklich reden, oder? Ich würde mich jetzt auch gerne mal eine halbe Stunde in der MassageBox entspannen. 😉

    EDIT2: Und was ist mit FormatExceptin? Hör mal, es reicht einfach nicht, wenn du beim Programmieren so ungefähr richtig schreibst. Das ist nicht wie beim Deutsch-Diktat in der Schule, wo du dann immer noch eine 4 bekommst. Du musst schon zeichengenau alles richtig schreiben.



  • Du hast da massiv Names-Fehler drin..
    Schreib das Programm bitte Stück-für-Stück... und kompiliere immer mal wieder...



  • Hallo

    Erst mal lieben Dank für Eure "Erste Hilfe". MessageBox, ist schon klar, ist nur ein mir entgangener Eintippfehler.

    Syntaxfehler behoben, den Rest muss ich mir noch mal ansehen. Bin etwas raus, da ich letzte Zeit mehr für die Umschulung getan habe, als mich C++ Forms zu beschäftigen. Dort steht schließlich bald Prüfung an. Also hat Freizeitbeschäftigung das Nachsehen.

    Werde das ganze noch mal Überdenken und mich morgen wieder melden.

    Gruß

    Champmann



  • Beachte bitte, dass Du hier mit WinForms kein C++ machst, sondern C++/CLI was i.d.R. keinen Sinn macht. Siehe:
    http://blog.kalmbach-software.de/de/2010/03/05/ccli-und-winforms-macht-keinen-sinn/



  • Hallo

    Sind denn in dem Code C++ anstatt C++/CLI - Anweisungen zu finden? Sorry, muss erst wieder rein kommen.

    Trotzdem lieben Dank.

    champmann



  • Dein Code ist voll davon.

    EDIT: Sorry, hatte falsch 'rum gelesen. Voll von C++/CLI natürlich.


Anmelden zum Antworten