Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Mal wieder Array zurückgeben...

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
01.07.2007, 18:55 Uhr
~frager
Gast


Servus,


folgendes sollte doch möglich sein:

C++:
static const int clearTheseFieldsSize = 64;
Object * clearTheseFields[clearTheseFieldsSize];



dieses Object array möchte ich nun in einer Methode returnen:


C++:
const Object * Object::getTheseFieldsToDelete(void)
{
    return this->clearTheseFields;
}



Der Compiler meckert aber: 'return': 'Object *[64]' kann nicht in 'const Object *' konvertiert werden.

Ist "clearTheseFields" ein konstanter Zeiger auf den ersten Object Zeiger des Arrays oder habe ich was falsch verstanden?

Danke schonmal

Frager
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
01.07.2007, 19:01 Uhr
~frager
Gast


edit:

oder wäre folgendes richtig:

const Object * Object::getTheseFieldsToDelete(void)
{
return *this->clearTheseFields;
}


somit hab ich auf jeden fall den zeiger des 1. elements und der rest der arraywerte müsste ja nacheinander im speicher liegen, oder?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
01.07.2007, 19:09 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hi davon darfst du nicht ausgehen.

ansonsten:


C++:
const Object **Object::getTheseFieldsToDelete()
{



da ein Object *array[...] ein ** ist
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
01.07.2007, 19:52 Uhr
~frager
Gast


wenn ich das so mache kommt:

'return': 'Object *[64]' kann nicht in 'const Object **' konvertiert werden


C++:
const Object ** Object::getTheseFieldsToDelete(void)
{
    return this->clearTheseFields;
}

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
01.07.2007, 19:55 Uhr
~frager
Gast


nachtrag:

wieso kann ich nicht davon ausgehen dass die zeiger im array nacheinander im speicher liegen? ich dachte c++ garantiert mir das!?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: