JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=71e45a5c2ead8e263ae0ac577a676265Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

this zeiger problem

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Florian
Super JLI'ler


Alter: 36
Anmeldedatum: 20.06.2003
Beiträge: 302

Medaillen: Keine

BeitragVerfasst am: 11.04.2004, 09:16    Titel: this zeiger problem Antworten mit Zitat

Hallo ich habe folgendes problem.
Mal ein code beispiel dazu;

class a
{
public:
int a;
b objekt(this);

};

class b
{
public:
b(a* zeiger);
};

mit diesem code möchte ich erreichen dass ich auf mit der deklaration b objekt(this) einen zeiger auf
das erstellte objekt erhalte.
Aber das funktioniert nicht so warum;
this ist schon ein Zeiger auf das erstellte Objekt der klasse a oder?

Danke
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
fowly
JLI'ler



Anmeldedatum: 25.01.2004
Beiträge: 196
Wohnort: Detmold - NRW
Medaillen: Keine

BeitragVerfasst am: 11.04.2004, 10:49    Titel: Antworten mit Zitat

hmm... ich weiß nicht, aber sollte es nicht so heißen?

class a
{
public:
int a;
b objekt(&this);

};

class b
{
public:
b(a* zeiger);
};

edit: muss die klasse b bei der deklaration von a nicht schon bekannt sein und umgekehrt?
_________________
<-- Noch in der Entwicklungsphase: http://www.uranus-entertainment.de -->

Das Spiel zu unserer Schule:

http://www.grabbe-game.de


Zuletzt bearbeitet von fowly am 11.04.2004, 10:59, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Hazel
JLI MVP
JLI MVP


Alter: 39
Anmeldedatum: 19.07.2002
Beiträge: 1761

Medaillen: Keine

BeitragVerfasst am: 11.04.2004, 10:57    Titel: Antworten mit Zitat

Nein, damit würdest du einen Zeiger auf einen Zeiger erhalten.
_________________
*click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
fowly
JLI'ler



Anmeldedatum: 25.01.2004
Beiträge: 196
Wohnort: Detmold - NRW
Medaillen: Keine

BeitragVerfasst am: 11.04.2004, 11:01    Titel: Antworten mit Zitat

oh

stimmt, vergessen...

hab aber noch eine andere idee (siehe oben, edit), nämlich dass die klasse b zur deklaration a doch noch garnicht bekannt ist.

wo gibt der compiler denn einen fehler aus, oder der debugger?
_________________
<-- Noch in der Entwicklungsphase: http://www.uranus-entertainment.de -->

Das Spiel zu unserer Schule:

http://www.grabbe-game.de
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Hazel
JLI MVP
JLI MVP


Alter: 39
Anmeldedatum: 19.07.2002
Beiträge: 1761

Medaillen: Keine

BeitragVerfasst am: 11.04.2004, 11:03    Titel: Antworten mit Zitat

Ist eine Möglichkeit aber er sagt uns ja nichtmal warum es nicht geht/was er für einen Fehler bekommt.
_________________
*click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
HotAcid
Super JLI'ler


Alter: 43
Anmeldedatum: 04.08.2002
Beiträge: 372
Wohnort: Berlin
Medaillen: Keine

BeitragVerfasst am: 11.04.2004, 11:57    Titel: Re: this zeiger problem Antworten mit Zitat

Florian hat Folgendes geschrieben:

Code:
b objekt(this);



Was soll denn bitte diese Deklaration? Das ist doch völliger Quatsch. In eine Deklaration schreibst du die Datentypen rein, die über- bzw. zurückgegeben werden.

Beispiele:
Code:
int i;  // korrekt
int f(int,double);  // korrekt
double machwas(int a, int b); // korrekt
int g(int a, i);  // FALSCH: i kein Datentyp
b objekt(this);  // FALSCH: this kein Datentyp


Ich vermute mal, du möchtest so etwas hier haben:
Code:

class b;  // Klasse b bekanntmachen

class a
{
public:
  int a;
  b objekt() { return b(this); } 
};

class b
{
public:
  b(a* zeiger);
}


cu Felix
_________________
StGB §§ 328 Abs. 2 Pkt 3:
Mit Freiheitsstrafe bis zu fünf Jahren oder mit Geldstrafe wird bestraft, wer eine nukleare Explosion verursacht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Hazel
JLI MVP
JLI MVP


Alter: 39
Anmeldedatum: 19.07.2002
Beiträge: 1761

Medaillen: Keine

BeitragVerfasst am: 11.04.2004, 12:04    Titel: Antworten mit Zitat

Ich dachte eher er meinte sowas:

Code:

class A
{
   public:
   a(b * reference) { ... }
}


class B
{
   public:
   b() { bla = a(this); }


Naja solche Pseudo-Beispiele sind immer leicht misinterpretiert, am besten sind echte Codeschnippsel.
_________________
*click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Florian
Super JLI'ler


Alter: 36
Anmeldedatum: 20.06.2003
Beiträge: 302

Medaillen: Keine

BeitragVerfasst am: 11.04.2004, 12:11    Titel: Antworten mit Zitat

Danke erst mal ich.
Da ich das Beispiel gerade nicht zur hand habe und somit die Fehler nicht mer weiß melde ich mich später wieder danke
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Entwicklung Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum