[C++] Erstellt kein Programm

  • Hey, wenn ich ein neues Projekt in C++ erstelle und es dann debuggen will, klappt es nicht, da in der "/Test/Debug/" nichts drin ist...


    Also er erstellt kein Programm in der Debug, somit ist das Programm dann auch nutzlos ..
    Kann mir jemand helfen?
    Danke im voraus!

  • Der wird doch unten in der Konsole angezeigt wenn du den Debugger startest bzw. das Projekt erstellst?


    Da stehen dann auch die Fehler dabei.


    Ohh ;)



    Sind so einige Errors ...


    Code:
    #pragma once


    #pragma once


    namespace Testss2 {


    using namespace System;
    using namespace System::ComponentModel;
    using namespace System::Collections;
    using namespace System::Windows::Forms;
    using namespace System::Data;
    using namespace System::Drawing;


    /// <summary>
    /// Zusammenfassung für Form1
    /// </summary>
    public ref class Form1 : public System::Windows::Forms::Form
    {
    public:
    Form1(void)
    {
    InitializeComponent();
    //
    //TODO: Konstruktorcode hier hinzufügen.
    //
    }


    protected:
    /// <summary>
    /// Verwendete Ressourcen bereinigen.
    /// </summary>
    ~Form1()
    {
    if (components)
    {
    delete components;
    }
    }
    private: System::Windows::Forms::Button^ button1;
    protected:
    private: System::Windows::Forms::Label^ label1;
    private: System::Windows::Forms::TextBox^ TextFeld;
    private: System::Windows::Forms::Button^ button2;
    private: System::Windows::Forms::Button^ button3;
    private: System::Windows::Forms::Button^ button4;
    private: System::Windows::Forms::Button^ button5;
    private: System::Windows::Forms::Button^ button6;
    private: System::Windows::Forms::Button^ button7;
    private: System::Windows::Forms::Button^ button8;
    private: System::Windows::Forms::Button^ button9;
    private: System::Windows::Forms::Button^ button10;
    private: System::Windows::Forms::Button^ button11;
    private: System::Windows::Forms::Button^ button12;
    private: System::Windows::Forms::Button^ button13;
    private: System::Windows::Forms::Button^ button14;
    private: System::Windows::Forms::Button^ button15;
    private: System::Windows::Forms::Button^ button16;
    private: System::Windows::Forms::Button^ button17;
    private: System::Windows::Forms::Button^ button18;


    private:
    /// <summary>
    /// Erforderliche Designervariable.
    /// </summary>
    System::ComponentModel::Container ^components;


    #pragma region Windows Form Designer generated code
    /// <summary>
    /// Erforderliche Methode für die Designerunterstützung.
    /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
    /// </summary>
    void InitializeComponent(void)
    {
    this->button1 = (gcnew System::Windows::Forms::Button());
    this->label1 = (gcnew System::Windows::Forms::Label());
    this->TextFeld = (gcnew System::Windows::Forms::TextBox());
    this->button2 = (gcnew System::Windows::Forms::Button());
    this->button3 = (gcnew System::Windows::Forms::Button());
    this->button4 = (gcnew System::Windows::Forms::Button());
    this->button5 = (gcnew System::Windows::Forms::Button());
    this->button6 = (gcnew System::Windows::Forms::Button());
    this->button7 = (gcnew System::Windows::Forms::Button());
    this->button8 = (gcnew System::Windows::Forms::Button());
    this->button9 = (gcnew System::Windows::Forms::Button());
    this->button10 = (gcnew System::Windows::Forms::Button());
    this->button11 = (gcnew System::Windows::Forms::Button());
    this->button12 = (gcnew System::Windows::Forms::Button());
    this->button13 = (gcnew System::Windows::Forms::Button());
    this->button14 = (gcnew System::Windows::Forms::Button());
    this->button15 = (gcnew System::Windows::Forms::Button());
    this->button16 = (gcnew System::Windows::Forms::Button());
    this->button17 = (gcnew System::Windows::Forms::Button());
    this->button18 = (gcnew System::Windows::Forms::Button());
    this->SuspendLayout();
    //
    // button1
    //
    this->button1->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button1->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button1->ForeColor = System::Drawing::SystemColors::ButtonFace;
    this->button1->Location = System::Drawing::Point(12, 241);
    this->button1->Name = L"button1";
    this->button1->Size = System::Drawing::Size(110, 31);
    this->button1->TabIndex = 0;
    this->button1->Text = L"0";
    this->button1->UseVisualStyleBackColor = false;
    //
    // label1
    //
    this->label1->AutoSize = true;
    this->label1->Location = System::Drawing::Point(13, 13);
    this->label1->Name = L"label1";
    this->label1->Size = System::Drawing::Size(0, 13);
    this->label1->TabIndex = 1;
    //
    // TextFeld
    //
    this->TextFeld->BackColor = System::Drawing::Color::Red;
    this->TextFeld->Location = System::Drawing::Point(12, 13);
    this->TextFeld->Multiline = true;
    this->TextFeld->Name = L"TextFeld";
    this->TextFeld->Size = System::Drawing::Size(226, 66);
    this->TextFeld->TabIndex = 2;
    this->TextFeld->TextChanged += gcnew System::EventHandler(this, &Form1::TextFeld_TextChanged);
    //
    // button2
    //
    this->button2->BackColor = System::Drawing::Color::FromArgb(static_cast<System::Int32>(static_cast<System::Byte>(255)), static_cast<System::Int32>(static_cast<System::Byte>(128)),
    static_cast<System::Int32>(static_cast<System::Byte>(0)));
    this->button2->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button2->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button2->Location = System::Drawing::Point(186, 203);
    this->button2->Name = L"button2";
    this->button2->Size = System::Drawing::Size(52, 68);
    this->button2->TabIndex = 3;
    this->button2->Text = L"=";
    this->button2->UseVisualStyleBackColor = false;
    //
    // button3
    //
    this->button3->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button3->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button3->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button3->Location = System::Drawing::Point(128, 241);
    this->button3->Name = L"button3";
    this->button3->Size = System::Drawing::Size(52, 30);
    this->button3->TabIndex = 4;
    this->button3->Text = L".";
    this->button3->UseVisualStyleBackColor = false;
    //
    // button4
    //
    this->button4->BackColor = System::Drawing::SystemColors::ActiveCaption;
    this->button4->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button4->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button4->Location = System::Drawing::Point(186, 87);
    this->button4->Name = L"button4";
    this->button4->Size = System::Drawing::Size(52, 34);
    this->button4->TabIndex = 5;
    this->button4->Text = L"x";
    this->button4->UseVisualStyleBackColor = false;
    //
    // button5
    //
    this->button5->BackColor = System::Drawing::SystemColors::ActiveCaption;
    this->button5->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button5->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button5->Location = System::Drawing::Point(128, 88);
    this->button5->Name = L"button5";
    this->button5->Size = System::Drawing::Size(52, 33);
    this->button5->TabIndex = 6;
    this->button5->Text = L"÷";
    this->button5->UseVisualStyleBackColor = false;
    //
    // button6
    //
    this->button6->BackColor = System::Drawing::SystemColors::ActiveCaption;
    this->button6->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button6->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button6->Location = System::Drawing::Point(70, 88);
    this->button6->Name = L"button6";
    this->button6->Size = System::Drawing::Size(52, 33);
    this->button6->TabIndex = 7;
    this->button6->Text = L"+/-";
    this->button6->UseVisualStyleBackColor = false;
    //
    // button7
    //
    this->button7->BackColor = System::Drawing::SystemColors::ActiveCaption;
    this->button7->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button7->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button7->Location = System::Drawing::Point(12, 88);
    this->button7->Name = L"button7";
    this->button7->Size = System::Drawing::Size(52, 33);
    this->button7->TabIndex = 8;
    this->button7->Text = L"C";
    this->button7->UseVisualStyleBackColor = false;
    //
    // button8
    //
    this->button8->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button8->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button8->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button8->Location = System::Drawing::Point(70, 127);
    this->button8->Name = L"button8";
    this->button8->Size = System::Drawing::Size(52, 32);
    this->button8->TabIndex = 9;
    this->button8->Text = L"8";
    this->button8->UseVisualStyleBackColor = false;
    //
    // button9
    //
    this->button9->BackColor = System::Drawing::SystemColors::ActiveCaption;
    this->button9->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button9->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button9->Location = System::Drawing::Point(186, 165);
    this->button9->Name = L"button9";
    this->button9->Size = System::Drawing::Size(52, 32);
    this->button9->TabIndex = 10;
    this->button9->Text = L"+";
    this->button9->UseVisualStyleBackColor = false;
    //
    // button10
    //
    this->button10->BackColor = System::Drawing::SystemColors::ActiveCaption;
    this->button10->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button10->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button10->Location = System::Drawing::Point(186, 127);
    this->button10->Name = L"button10";
    this->button10->Size = System::Drawing::Size(52, 32);
    this->button10->TabIndex = 11;
    this->button10->Text = L"-";
    this->button10->UseVisualStyleBackColor = false;
    //
    // button11
    //
    this->button11->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button11->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button11->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button11->Location = System::Drawing::Point(128, 126);
    this->button11->Name = L"button11";
    this->button11->Size = System::Drawing::Size(52, 33);
    this->button11->TabIndex = 12;
    this->button11->Text = L"9";
    this->button11->UseVisualStyleBackColor = false;
    //
    // button12
    //
    this->button12->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button12->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button12->ForeColor = System::Drawing::SystemColors::ButtonFace;
    this->button12->Location = System::Drawing::Point(128, 203);
    this->button12->Name = L"button12";
    this->button12->Size = System::Drawing::Size(52, 32);
    this->button12->TabIndex = 13;
    this->button12->Text = L"3";
    this->button12->UseVisualStyleBackColor = false;
    //
    // button13
    //
    this->button13->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button13->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button13->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button13->Location = System::Drawing::Point(70, 203);
    this->button13->Name = L"button13";
    this->button13->Size = System::Drawing::Size(52, 32);
    this->button13->TabIndex = 14;
    this->button13->Text = L"2";
    this->button13->UseVisualStyleBackColor = false;
    //
    // button14
    //
    this->button14->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button14->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button14->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button14->Location = System::Drawing::Point(128, 165);
    this->button14->Name = L"button14";
    this->button14->Size = System::Drawing::Size(52, 32);
    this->button14->TabIndex = 15;
    this->button14->Text = L"6";
    this->button14->UseVisualStyleBackColor = false;
    //
    // button15
    //
    this->button15->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button15->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button15->ForeColor = System::Drawing::SystemColors::Control;
    this->button15->Location = System::Drawing::Point(12, 127);
    this->button15->Name = L"button15";
    this->button15->Size = System::Drawing::Size(52, 32);
    this->button15->TabIndex = 16;
    this->button15->Text = L"7";
    this->button15->UseVisualStyleBackColor = false;
    //
    // button16
    //
    this->button16->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button16->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button16->ForeColor = System::Drawing::SystemColors::ButtonFace;
    this->button16->Location = System::Drawing::Point(12, 203);
    this->button16->Name = L"button16";
    this->button16->Size = System::Drawing::Size(52, 31);
    this->button16->TabIndex = 17;
    this->button16->Text = L"1";
    this->button16->UseVisualStyleBackColor = false;
    //
    // button17
    //
    this->button17->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button17->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F, System::Drawing::FontStyle::Regular, System::Drawing::GraphicsUnit::Point,
    static_cast<System::Byte>(0)));
    this->button17->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button17->Location = System::Drawing::Point(70, 165);
    this->button17->Name = L"button17";
    this->button17->Size = System::Drawing::Size(52, 31);
    this->button17->TabIndex = 18;
    this->button17->Text = L"5";
    this->button17->UseMnemonic = false;
    this->button17->UseVisualStyleBackColor = false;
    //
    // button18
    //
    this->button18->BackColor = System::Drawing::SystemColors::ActiveCaptionText;
    this->button18->Font = (gcnew System::Drawing::Font(L"Microsoft Sans Serif", 14.25F));
    this->button18->ForeColor = System::Drawing::SystemColors::ButtonHighlight;
    this->button18->Location = System::Drawing::Point(12, 165);
    this->button18->Name = L"button18";
    this->button18->Size = System::Drawing::Size(52, 31);
    this->button18->TabIndex = 19;
    this->button18->Text = L"4";
    this->button18->UseVisualStyleBackColor = false;
    //
    // Form1
    //
    this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
    this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
    this->BackColor = System::Drawing::Color::FromArgb(static_cast<System::Int32>(static_cast<System::Byte>(64)), static_cast<System::Int32>(static_cast<System::Byte>(64)),
    static_cast<System::Int32>(static_cast<System::Byte>(64)));
    this->ClientSize = System::Drawing::Size(250, 282);
    this->Controls->Add(this->button18);
    this->Controls->Add(this->button17);
    this->Controls->Add(this->button16);
    this->Controls->Add(this->button15);
    this->Controls->Add(this->button14);
    this->Controls->Add(this->button13);
    this->Controls->Add(this->button12);
    this->Controls->Add(this->button11);
    this->Controls->Add(this->button10);
    this->Controls->Add(this->button9);
    this->Controls->Add(this->button8);
    this->Controls->Add(this->button7);
    this->Controls->Add(this->button6);
    this->Controls->Add(this->button5);
    this->Controls->Add(this->button4);
    this->Controls->Add(this->button3);
    this->Controls->Add(this->button2);
    this->Controls->Add(this->TextFeld);
    this->Controls->Add(this->label1);
    this->Controls->Add(this->button1);
    this->Name = L"Form1";
    this->Text = L"Taschenrechner";
    this->Load += gcnew System::EventHandler(this, &Form1::Form1_Load);
    this->ResumeLayout(false);
    this->PerformLayout();


    }
    #pragma endregion
    };
    }


  • Das ist C# und nicht C++. ;)


    8|
    Ja, genau, weils in C# auch Präprozessordirektiven gibt ne :pinch:


    Zudem wird in C# die "Zugriffsattribute" nicht nach einem Doppelpunkt geschrieben.


    LG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

  • Und wenn schon ...
    Trotzdem ist es C++, erster Grund siehe oben in meinem Post (private: , public:, ...)
    und 2 kann man in C# nicht manuell Speicher mit new vom Heap anfordern und mit delete wieder löschen.


    Zudem: Schau auf die Dateiendung im "Compilelog", da steht sogar .cpp ^^


    LG

    Main: CPU: Intel Core i5-4440 @ 3,10 GHz | CPU-Cooling: Matterhorn -PURE- | RAM: 16GB Crucial Ballistix Sport DDR3-1600 DIMM CL9-9-9-24 |
    Motherboard: ASRock B85M Pro4 | GPU: Sapphire Radeon R9 390X Nitro 8GB GDDR5 |

    SSD: Samsung SSD 840 Evo 500GB | Power Supply: 550 Watt Corsair CS Series Modular 80+ Gold | Case: beQuiet! Silent Base 800


    As I walk through the valley of the shadow of death
    I take a look at my life and realize there's nothin' left.

  • Die Fehler liegen hier:
    // Rechner.cpp: Hauptprojektdatei.


    #include "stdafx.h"
    #include "Form1.h"


    using namespace Rechner;


    [STAThreadAttribute]
    int main(array<System::String ^> ^args)
    {
    // Aktivieren visueller Effekte von Windows XP, bevor Steuerelemente erstellt werden
    Application::EnableVisualStyles();
    Application::SetCompatibleTextRenderingDefault(false);


    // Hauptfenster erstellen und ausführen
    Application::Run(gcnew Form1());
    return 0;
    }

    Lerne erst C++, deswegen kann ich es noch nicht richtig..
    Nur ist es so, das man ich wenn man Testet, mehr lernt, als wenn man nur liest.. ( man bzw ich )


    Weiß jemand, wo der Fehler liegt? :/

  • Zudem wird in C# die "Zugriffsattribute" nicht nach einem Doppelpunkt geschrieben.


    In C++ verwendet man -> und in C# . ;)


    So kann man das eigentlich ziemlich schnell sehen ^^


    Weiß jemand, wo der Fehler liegt? :/


    Du solltest nochmal alle deine Projekte löschen und dann ein neues erstellen...da sind die Klassen durcheinander gekommen...und der namespace ;)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Mostey liegt mit seiner Aussage, dass es sich um C# handelt nicht ganz so weit weg, wie es hier dargestellt wird.
    Bei der Programmiersprache, die hier verwendet wird handelt es sich tatsaechlich nicht um C++, sondern um das von Microsoft fuer die .NET Plattform entwickelte C++/CLI.
    Zum Lernen ist C++/CLI nicht gerade optimal. Ich empfehle dem Themenersteller sich eine bessere Sprache zu suchen, entweder 'richtiges' C++, C, oder eine 'richtige' .NET Sprache, wie C#, bzw. Visual Basic .NET.
    Da das Interesse an C-Syntax aehnlichen Sprachen besteht empfehle ich C#, oder, falls es nichts ausmacht, dass man nicht einfach seine Anwendungen zusammen klicken kann, wie man es in .NET Sprachen gewoehnt ist, sondern Anfangs nur Konsolenanwendungen/Kommandozeilen-Anwendungen schreibt/schreiben kann empfehle ich C, oder C++.


    Zu dem eigentlichen Problem:

    1>Rechner.cpp(8): error C2337: "STAThreadAttribute": Attribut wurde nicht gefunden.
    1>Rechner.cpp(12): error C2653: 'Application': Keine Klasse oder Namespace

    Als erstes einmal fehlt in der Rechner.cpp ein "using namespace System;", da STAThreadAttribute in dem Namespace ist.
    In der selben Datei ist auch ein "using namespace System::Windows::Forms;" noetig, da Application in dem Namespace ist.
    Alternativ kann man auch "System::STAThreadAttribute" und "System::Windows::Forms::Application" schreiben, anstatt der using namespace Direktiven.


    1>Rechner.cpp(6): error C2871: 'Rechner': Es ist kein Namespace mit diesem Namen vorhanden

    Kann Folge einer Umbenennung sein. Entweder in Form1 'Testss2' zu 'Rechner' umbenennen, oder in Rechner.cpp das "using namespace Rechner" zu "using namespace Testss2".


    1>c:\users\key\documents\visual studio 2010\projects\rechner\rechner\Form1.h(124): error C2039: 'TextFeld_TextChanged': Ist kein Element von 'Testss2::Form1' (..)
    1>c:\users\key\documents\visual studio 2010\projects\rechner\rechner\Form1.h(124): error C2065: 'TextFeld_TextChanged': nichtdeklarierter Bezeichner

    Sind die beiden Dateien, die gepostet wurden der gesamte Quelltext? In C# mit der Visual Studio IDE werden die Funktionen, die der Nutzer erstellen moechte automatisch als leere Funktionen erstellt. Da die Funktionen fehlen nehme ich an, dass Visual Studio die Funktionen bei C++/CLI Anwendungen nicht automatisch anlegt, oder, dass die Funktionen einfach in einer anderen Datei angelegt wurden und diese vergessen wurde per #include einzufuegen. (Ich gehe aber vom ersten aus, da Visual Studio nicht gerade eine Prioritaet auf C++/CLI setzt. Visual Studio 2010 hatte z.B. keinen funktionierenden IntelliSense fuer C++/CLI.)
    Auf jedenfall fehlen dem Compiler die Funktionen "TextFeld_TextChanged" und "Form1_Load".


    In C++ verwendet man -> und in C# . ;)

    In C++ wird bei Objekten ebenfalls ein Punkt verwendet, wenn es sich nicht um einen Zeiger handelt.

  • Meiner Meinung nach ist C nicht zu empfehlen. Vorallem dann nicht, wenn man seine Kenntnisse irgendwann mal mit C++ oder C# erweitern müsste. Ich spreche da auch einfach aus Erfahrung da man (vorallem bei casts) leider relativ häufig von Reflex aus auf C Methoden in C++ zurückgreift und das eben nicht dem Modell der Sprache entspricht. Kann man ungefähr mit "eingedeutschten" Begriffen in unserer Sprache gleichsetzen. :thumbup:


    Lernen sollte man mit .NET sowieso nicht sondern klein anfangen - Grundprinzipien der Sprache verstehen und sich mit OOP auseinandersetzen. Klappt am Besten über die gute alte Kommandozeile wie SBIKA schon erwähnt hat.