Das im Form1 funktioniert: #include "Form2.h" … Form2^ frm2 = gcnew Form2(); frm2->Show(); this->Hide(); Aber das im Form2 bringt Fehler: #include "Form1.h" … Form1^ frm1 = gcnew Form1(); frm1->Show(); this->Hide(); error C2065: 'Form1': nichtdeklarierter Bezeichner -- Um lange und müßige Diskussionen zu vermeiden, habe ich Deinen Betreff mal angepasst. -rufus
:
Bearbeitet durch User
Und das soll genuegend Information sein um den Fehler nachzuvollziehen? Mindestens Implementation und Header von Form1 und Form2 solltest du schon anhaengen. Gibts einen speziellen Grund warum du dir WinForms in C++/CLI antust? Und VS 2010? Cheers, Roger
Roger S. schrieb: > Und VS 2010? Gibt es neuer Versionen? Warum benutze ich es? Ich habe etwas mit Borland Builder programmiert und finde ich das ziemlich bequem kleine Anwendungen schnell zu bewältigen.
skorpionx schrieb: > Gibt es neuer Versionen? Visual Studio 2017.5 ist die aktuelle Variante. > Ich habe etwas mit Borland Builder programmiert und finde ich das ziemlich bequem Und warum bleibst Du nicht dabei?
skorpionx schrieb: > Gibt es neuer Versionen? https://www.visualstudio.com/ 'Community is the new Express' Cheers, Roger
Rufus Τ. F. schrieb: > Und warum bleibst Du nicht dabei? Borland Builder ist schon ziemlich alt... Obwohl die Programme funktionieren auch unter Win 10 (Beitrag "PCB von BMP drucken"). Ich wollte einfach etwas neueres.
Roger S. schrieb: > Community is the new Express Leider keine C++ für Form Anwendungen. Gibst eine neuer C++ mit Form Anwendungen als Visual C++ 2010 Express (vor 2017 Express)?
hört sich nach dem 'circular reference' Problem an, http://www.acodersjourney.com/2016/05/top-10-c-header-file-mistakes-and-how-to-fix-them/
skorpionx schrieb: > Leider keine C++ für Form Anwendungen. Pure C++ sowieso nicht, aber fuer C++/CLI (was du dir ja antust) gibt es das sehr wohl. Tip: Schau dir das WinForms in C#.Net an. Ist dasselbe, bereitet weniger Kopfschmerzen und du kommst viel schneller vorwaerts. Cheers, Roger
Das ist eher ein logisches Problem und hat nix mit den Werkzeugen zu tun.
skorpionx schrieb: > Ich wollte einfach etwas neueres. Und deswegen verabschiedest Du Dich von einem nativen C++-Compiler und verwendest statt dessen das .Net-Geraffel mit Pseudo-C++ ("Managed C++" bzw. "C++/CLI")? Auch wenn Microsoft das Zeug "C++" nennt, es ist kein C++. Der Microsoft-Compiler selbst kann auch natives C++ verarbeiten, nur dann halt ohne das .Net-Geraffel (wozu WindowsForms gehört). Für natives C++ gibt es andere GUI-Toolkits, die sich auch mit dem Microsoft-Compiler verwenden lassen, das wären die MFC (von MS selbst), Qt, wxWidgets ... und viele andere mehr. Qt und wxWidgets bieten den Vorteil, auch auf anderen Plattformen als Windows verwendbar zu sein.
skorpionx schrieb: > Borland Builder ist schon ziemlich alt... Obwohl die Programme > funktionieren auch unter Win 10 > (Beitrag "PCB von BMP drucken"). > Ich wollte einfach etwas neueres. Und deswegen steigst du vom lahmen Pferd aufs tote Pferd um? Warum muss es denn unbedingt diese Technologie sein, welche die Nachteile von C++ und C# vereint? Warum nicht direkt etwas das noch weiter entwickelt wird, wie C++, C#, Java, ...
Roger S. schrieb: > Pure C++ sowieso nicht, aber fuer C++/CLI (was du dir ja antust) gibt es > das sehr wohl. Wo finde ich diese Erweiterung (link...)? Mit diesem link funktioniert das nicht: https://marketplace.visualstudio.com/items?itemName=msdnprofilerk.CCLRWindowsFormsfurVisualStudio2017 Ich habe die neueste Version von Visual (15.5.7) Studio installiert. Einzige was bei mir geht ist das: https://social.msdn.microsoft.com/Forums/vstudio/en-US/e6fbde42-d872-4ab3-8000-41ab22a4a584/visual-studio-2017-windows-forms?forum=winformsdesigner Das hat aber eine Macke. Dieser Fehler (Beschreibung im link...) kommt öfter. Die Lösung: Dummy Änderung (leere Zeile einfügen oder löschen...)im eingefügten Text mit Main , abspeichern,Studio schließen,Studio öffnen, Debuging starten.
skorpionx schrieb: > Wo finde ich diese Erweiterung (link...)? Mit diesem link > funktioniert das nicht: > https://marketplace.visualstudio.com/items?itemName=msdnprofilerk.CCLRWindowsFormsfurVisualStudio2017 Was funktioniert denn nicht? Ich konnte die Erweiterung installieren. Builden liess sich ein neues Prokekt auch, nach anpassen der Windows SDK Version in den Project Properties. Cheers, Roger
Roger S. schrieb: > Was funktioniert denn nicht? Bilder nach dieser Erweiterung. Vielleicht mein Antivirenprogramm ...?
skorpionx schrieb: > Um lange und müßige Diskussionen zu vermeiden, habe ich Deinen Betreff > mal angepasst. Sinnvoller wäre wohl gewesen, dem Typen einfach das Konzept einer Vorwärts-Deklaration zu vermitteln... Das hätte den ganzen Thread eingespart, in dem wirklich alle Beteiligten gezeigt haben, dass sie schlicht keine Ahnung vom Programmieren haben, einschliesslich deiner Wenigkeit übrigens...
c-hater schrieb: > dass sie schlicht keine Ahnung vom Programmieren haben, einschliesslich > deiner Wenigkeit übrigens... Lass den Schwachsinn stecken wo er herkommt.
c-hater schrieb: > skorpionx schrieb: Nein, nicht der war's, sondern der allgemein beliebte Rufus, der sich hier dank seiner Moderatoren-Macht in das Posting von scorpionx gehackt hat. Sorry, scorpionx, nicht dein Fehler, sondern meiner.
skorpionx schrieb: > Bilder nach dieser Erweiterung. Vielleicht mein Antivirenprogramm ...? Nach der Installation gibt es das CppCLR_WinFormsProjekt, es ist allerdings nicht, wie man annehmen wuerde, in CLR zu finden, sondern direkt unter 'Visual C++' Cheers, Roger
Roger S. schrieb: > direkt unter 'Visual C++' Danke! Du hast Recht. Ich bin vom Visual Studio 2017 begeistert. Super Entwicklungsumgebung. Nicht zu zu vergleichen mit 2010. Ich bin schon ziemlich weit mit meiner Entwicklung. Ich werde von meinem Mikroprozessor System über RS232 Daten empfangen, auf der Platte abspeichern, visualisieren, Ev. auch ausdrucken. Es geht um Parameteroptimierung (z.B. für PID Regler). Auch Files Länge für produzierte EXE ist wesentlich kleiner als beim Borlands Builder. Warum bleibe ich beim C++?. Diese C# (habe ich getestet) ist wirklich einfacher. Aber über Jahre programmierte ich in C. Habe keine Lust mich auf neue Sache zu gewöhnen. Ab und zu Unterschiede sind sehr klein und das ist eigentlich störend. Außerdem Programmiere ich meinen Mikroprozessor in C.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.