Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Objekt in einer Applikation erzeugen

Frage Entwicklung C und C++

Mitglied: Aldarin

Aldarin (Level 1) - Jetzt verbinden

08.02.2007, aktualisiert 12.02.2007, 3619 Aufrufe, 2 Kommentare

Erzeugung eines Objekts, auf der Basis einer Klasse in einer Win32 Applikation (erstellt mit Visual Studio 6)

Hallo,

es geht um ein Problem.

Bisher hatte ich lediglich Konsolenanwendungen in C++ erstellt.

Sollte ich jedoch eine Oberfläche benutzen, hatte ich meistens auf andere Sprachen zurückgegriffen.

Nun steh ich vor dem Problem das ich mit Visual Studio 6 (C++) ein Programm, welches zuvor als Konsolenanwendung geschrieben wurde, in eine GUI zu überführen.

Das Grundgerüst lies ich mir von VS erstellen. Ich habe auch schon einige Tutorials gelesen um das Gerüst zu verändern und zu erweitern.
Bzw. um Tastaturabfragen vorzunehmen etc. etc. etc.

Nun steh ich jedoch vor einem Problem.

Ich habe zuvor in der Konsolenanwendung eine Klasse (Name: Cspielfeld) gehabt.
Diese hatte einige Methoden und Attribute.

In der Konsolenanwendung lies ich mir das Objekt mit "Cspielfeld feld" erzeugen.
In der Applikation, geht diese Prozedur jedoch nicht.

Ich habe die spielfeld.h (Headerdatei der Klasse) included.
Die Klasse wurde bisher nicht verändert und ist mit der Konsolenklasse identisch. Ebenso deren Methoden.

Ich wollte erst einmal das Ansteuern der einzelnen Elemente hinter die Menüpunkte legen, bevor ich dann die Methoden die für die Bildschirmausgabe zuständig waren umbaue, damit sie in das Window zeichnen können.
Dagegen spricht ja auch nichts.
Jedoch wenn ich nun das Objekt erzeugen will mit "Cspielfeld feld" bekomme ich folgende Meldungen:

error C2065: 'Cspielfeld' : undeclared identifier
error C2146: syntax error : missing ';' before identifier 'feld'
error C2065: 'feld' : undeclared identifier

Alle beziehen sich auf die besagte Zeile
Cspielfeld feld;

Wenn einer einen Tipp hat oder sogar eine konkrete Lösung wäre ich sehr dankbar!

Mit freundlichen Grüßen,
Daniel Felix
Mitglied: MartinSchmid
12.02.2007 um 21:57 Uhr
Zunächst solltest du wissen, dass deine Fehlermeldung vom Compiler erzeugt wird. Aus Sicht dessen gibt es keinen Unterschied zwischen Konsolenapplikation und einer Applikation mit GUI.

Erst der Linker kann unter Umständen diesen Unterschied erahnen (/subsystem:console oder /subsystem:windows), wobei es hier nicht darum geht ob eine Anwendung wirklich eine GUI hat oder nicht. Auch eine Konsole ist ein Fenster (zumindest unter Windows)

Deine Fehlermeldungen heißen im Grunde bloß, dass er (der Compiler) im aktuellen Kontext die Bezeichnung Cspielfeld nicht kennt. Das von dir angesprochene include muss vor der Definition von feld stehen und darf nicht durch ein #if(n)def umgangen werden.

Also folgendes muss funktionieren:
#include "spielfeld.h"
Cspielfeld feld;

Vorausgesetzt die Klasse Cspielfeld befindet sich auch in spielfeld.h (Groß-/Kleinschreibung beachten).

mfg Martin
Bitte warten ..
Mitglied: Aldarin
12.02.2007 um 22:10 Uhr
Hallo Martin,

erstmal danke für deine Hilfe, aber das war mir bereits bekannt. Ich habe es auch mit meiner Konstruktion hinbekommen.

Das Problem lag schlicht und ergreifend an Visual Studio.
Der Workspace war mehrmals zerschossen.

Ich habe 3 mal den Code 1:1 übernommen und jedesmal die datei spielfeld.h und spielfeld.cpp in das Projekt eingebunden aber dennoch hat er mir immer den selben Fehler ausgespuckt.
Beim vierten Versuch hatte er es gemacht.
irgendwo gabs wohl einen Fehler in VS aber naja ist ja nun auch egal. Problem hat sich nun ja zum glück erledigt.

Mit freundlichen Grüßen,
D. Felix
Bitte warten ..
Ähnliche Inhalte
Webentwicklung
ASP.Net Core-Applikationen erzeugen im IIS http-Fehler 405
Tipp von VeryBigMWebentwicklung

Problem: Beim Deployment einer mit ASP.Net Core 2.0 entwickelten Anwendung auf einen Liveserver schien zuerst alles gut zu funktionieren. ...

Windows Netzwerk
Migration: Auf welche Applikationen achten?
Frage von hash2k2Windows Netzwerk2 Kommentare

Hallo, bei einem Kunden führen wir demächst eine Active Directory Migration durch (Domain level, user migration) Außerdem stricken wir ...

PHP
Aus Arrays neue Arrays erzeugen!
gelöst Frage von FunkerVogtPHP8 Kommentare

Hallo Gemeinde, ich hoffe Ihr könnt mir bei meiner Problematik helfen und meinen kleinen gordischen Knoten im Kopf lösen. ...

Microsoft Office
Mit Excel einen Termin in Outlook erzeugen
gelöst Frage von Armin-KMicrosoft Office13 Kommentare

Liebes Forum, leider finde ich trotz zahlreicher vielversprechender Ansätze hier im Forum keine funktionierende Lösung. Folgende Aufgabenstellung: Ich möchte ...

Neue Wissensbeiträge
Router & Routing

Lets Encrypt kommt auf die FritzBox

Information von bitcoin vor 6 MinutenRouter & Routing

In der neuesten Labor-Version der FB7490 integriert AVM unter anderem einen Let's Encrypt Client für Zugriffe auf das Webinterface ...

Internet

Was nützt HTTPS, wenn es auch von Phishing Web-Seiten genutzt wird

Information von Penny.Cilin vor 3 TagenInternet17 Kommentare

HTTPS richtig einschätzen Ob man eine Webseite via HTTPS aufruft, zeigt ein Schloss neben der Adresse im Webbrowser an. ...

Webbrowser

Bugfix für Firefox Quantum released - Installation erfolgt teilweise nicht automatisch!

Erfahrungsbericht von Volchy vor 4 TagenWebbrowser8 Kommentare

Hallo zusammen, gem. dem Artike von heise online wurde mit VersionFirefox 57.0.1 sicherheitsrelevante Bugs behoben. Entgegen der aktuellen Veröffentlichung ...

Sicherheit

Teamviewer Sessions können gekapert werden - Update tw. verfügbar

Information von sabines vor 4 TagenSicherheit6 Kommentare

In bestimmten Konstellationen können Teamviewer Sessions gekapert werden, wahrscheinlich aber ein recht unwahrscheinliches Szenario. Da der Teamviewer gerne für ...

Heiß diskutierte Inhalte
Vmware
Installation Windows 10 VMware
Frage von Ghost108Vmware17 Kommentare

Hallo zusammen, versuche gerade mit Hilfe des vshpere clients eine virtuelle Windows 10 maschine aufzusetzen. 1. virtuelle Maschine erstellt ...

Exchange Server
SBS 2011 E-Mails können gesendet werden, aber nicht von extern empfangen
Frage von andreas1234Exchange Server14 Kommentare

Hallo Community, ich habe das Problem, dass seit knapp zwei Wochen die E-Mails von meinem SBS 2011 einwandfrei gesendet ...

Voice over IP
Telefonstörung - Ortsrufnummern kein Verbindungsaufbau
Frage von Windows10GegnerVoice over IP10 Kommentare

Hallo, sowohl bei uns als auch beim Opa ist es über VoIP nicht möglich Ortsrufnummern anzurufen. Es kommt nach ...

Windows Server
Server 2012 über Eingabeaufforderung devmgmt.msc geht nicht
gelöst Frage von achim222Windows Server9 Kommentare

Hallo, ich habe hier einen Server 2012 der im Reparaturmodus startet. Es liegt an einem falschen VirtIO Treiber für ...