Wahrscheinlich nur gerade einfach zu blöde dazu :-(
-
Hallo
Ich habe einmal ein Main.cpp und einmal eine ein Headder
nun möchte ich aus der Main folgendes aus machen.- ein Objekt entsprechend dem Headder erzeugen / anlegen
- mithilfe des angelegten Objektes eine Funktion aufrufen...
Dürfte eigentlich ja nich so das Problem sein, hätte man mal mehr CPP anstelle von JAVA programmiert.
Kann mit bitte jemand unter die Arme greifen ???
#include<iostream> using namespace std; class Campingplatzsystem; int main(int nn, char *par[]){ Campingplatzsystem *a1; a1->hallo_world(); int a; cin >> a; }Headder
#ifndef CAMPINGPLATZSYSTEM_H #define CAMPINGPLATZSYSTEM_H #include<iostream> using namespace std; class StellplatzListe; class ReservierungsListe; class CheckinListe; class BenutzerListe; class Gesamtpreis; class Checkin; class Reservierung; class Stellplatz; class Benutzer; class Campingplatzsystem { private: /** * @clientCardinality 1 * @supplierCardinality 1 * @label enthält * @directed true */ Gesamtpreis* lnkGesamtpreis1; /** * @supplierCardinality 1 * @clientCardinality 1 * @label besitzt * @directed true */ BenutzerListe* lnkBenutzerListe1; /** * @clientCardinality 1 * @supplierCardinality 1 * @label besitzt * @directed true */ CheckinListe* lnkCheckinListe1; /** * @supplierCardinality 1 * @clientCardinality 1 * @label besitzt * @directed true */ ReservierungsListe* lnkReservierungsListe1; /** * @clientCardinality 1 * @supplierCardinality 1 * @label besitzt * @directed true */ StellplatzListe* lnkStellplatzListe1; int a; public: Campingplatzsystem(); void hallo_world(); }; #endif Campingplatzsystem::Campingplatzsystem(){ a = 99; } void Campingplatzsystem::hallo_world(){ cout << "HELLO WORLD" << endl; }
-
bekomme immer folgenden Fehler:
1>Kompilieren...
1>Main.cpp
1>.\Main.cpp(12) : error C2027: Verwendung des undefinierten Typs "Campingplatzsystem"
1> .\Main.cpp(5): Siehe Deklaration von 'Campingplatzsystem'
1>.\Main.cpp(12) : error C2227: Links von "->hallo_world" muss sich ein Zeiger auf Klassen-/Struktur-/Union-/generischen Typ befinden.
1>Das Buildprotokoll wurde unter "file://e:\Eigene Dateien\Visual Studio 2005\Projects\Hausarbeit\Hausarbeit\Debug\BuildLog.htm" gespeichert.
1>Hausarbeit - 2 Fehler, 0 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
-
.. im main.cpp das #include "Campingplatzsystem.h" vergessen

-
Nee darauf war/bin ich auch schon gekommen dann gibt es diese Fehlermeldung
Noch jemand ne Idee?
1>Main.cpp
1>.\Main.cpp(6) : fatal error C1083: Datei (Include) kann nicht geöffnet werden: "Campingplatzsystem.h": No such file or directory
1>Das Buildprotokoll wurde unter "file://e:\Eigene Dateien\Visual Studio 2005\Projects\Hausarbeit\Hausarbeit\Debug\BuildLog.htm" gespeichert.
1>Hausarbeit - 1 Fehler, 0 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
-
Thread bitte löschen !!!
Der Fehler Lag daran, das Visual die vorhandenen Dateien nicht ins richtige verZeichniss geschoben hat
that's live
-
Erick_77 schrieb:
Campingplatzsystem *a1; a1->hallo_world();Das solltest du besser nicht machen - selbst wenn der Code so durch den Compiler geht, bekommst du spätestens bei der Ausführung Probleme, weil du kein Objekt angelegt hast (der Zeiger al zeigt ins Nirvana und du versuchst anschließend, fremde Speicherbereiche als Campingplatz zu deuten - im besten Fall beschwert sich dein Rechner mit einer Access Violation darüber, im schlimmsten Fall kommt nur Müll heraus).
Besser sieht es so aus:
Campingplatzsystem *al = new Campingplatzsystem;//Anlegen eines Objekts al->hallo_world(); ... delete al;//Speicher freigeben //oder Campingplatzsystem al; al.hallo_world();
-
Besten Dank