syntax error : 'public'



  • Hallo,

    ich habe hier einen kleinen Code, welcher unten stehenden Fehler ausspuckt. Ich habe keine Ahnung wo der Fehler liegen könnte. Gibt es zufällig jemanden, der den Fehler sofort findet?

    vielen Danke schon mal

    Code:

    /*
    #include <stdio.h>
    #include <iostream>
    #include <windows.h>
    
    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;
    */
    public ref class ExitApplication : public System::Windows::Forms::Form
    {
    private:
    	Button ^button1;
    	ListBox ^listBox1;
    
    public:
    	ExitApplication()
    	{
    		button1 = gcnew Button;
    		button1->Left = 200;
    		button1->Test = "Exit";
    		button1->Click = gcnew EventHandler (this, &ExitApplication::Button1_Click); //was soll das += ???
    		listBox1 = gcnew ListBox;
    		this->Controls->Add(button1);
    		this->Controls->Add(listbox1);
    	}
    
    private:
    	void ExitApplication::button1_Click ( Object ^ /* sender*/, EventArgs^ /*e*/)
    	{
    		int count = 1;
    
    		while (MessageBox::Show ("Exit application?","", MessageBoxButton::YesNo ) == ::DialogResult::No)
    		{
    			listBox1->Items->Add( count);
    			count += 1;
    		}
    
    		Application::Exit();
    	}
    };
    
    int main()
    {
    	Application::Run(gcnew testExitApplication);
    	return 0;
    }
    

    Fehler:
    testExitApplication.cpp
    c:\dokumente und einstellungen\testexitapplication.cpp(14) : error C2059: syntax error : 'public'
    c:\dokumente und einstellungen\testexitapplication.cpp(14) : error C2059: syntax error : 'public'
    c:\dokumente und einstellungen\testexitapplication.cpp(14) : error C2653: 'System' : is not a class or namespace name
    c:\dokumente und einstellungen\testexitapplication.cpp(15) : error C2143: syntax error : missing ';' before '{'
    c:\dokumente und einstellungen\testexitapplication.cpp(15) : error C2447: '{' : missing function header (old-style formal list?)
    c:\dokumente und einstellungen\testexitapplication.cpp(49) : error C2653: 'Application' : is not a class or namespace name
    c:\dokumente und einstellungen\testexitapplication.cpp(49) : error C2065: 'gcnew' : undeclared identifier
    c:\dokumente und einstellungen\testexitapplication.cpp(49) : error C2146: syntax error : missing ')' before identifier 'testExitApplication'
    c:\dokumente und einstellungen\testexitapplication.cpp(49) : error C2059: syntax error : ')'
    c:\dokumente und einstellungen\testexitapplication.cpp(49) : error C3861: 'Run': identifier not found



  • Hallo

    Warum sind alle includes und using-Anweisungen auskommentiert?

    chrische



  • weil es keinen Unterschied macht, das Beispiel war ohne die Includes, habe sie aber sicherheitshalber mit rein genommen. Hat aber nichts gebracht, daher wieder auskommentiert.



  • Hallo

    Klar macht es einen Unterschied, ob du die Anweisungen drinne lässt. Woher soll er den wissen, was System::Windows::Forms::Form ist?

    chrische



  • das bringt rein gar nichts was die Fehlermeldungen betrifft, ob include oder using drin ist oder nicht, Fehlermeldungen sind die selben



  • Sind die Referenzen auf die entsprechenden Assemblies gemacht?
    Simon


Anmelden zum Antworten