Frage zu Zeiger
-
Vielen Dank erst mal für die Antworten. Die Funktion sieh so aus:
cImage* cImageLoader::LoadIcon(const char *cIcon, int width, int height) { if ((width == 0) || (height == 0)) return NULL; cString File = cString::sprintf("%s%s/%s.%s", *Config.iconPath, Setup.OSDTheme, cIcon, *logoExtension); cImage *img; img = imgCache.GetImage(*File, width, height); if (img) return img; bool success = LoadImage(*File); if (!success) { File = cString::sprintf("%s%s/%s.%s", *Config.iconPath, "default", cIcon, *logoExtension); img = imgCache.GetImage(*File, width, height); if (img) return img; success = LoadImage(*File); if (!success) { dsyslog("imageloader LoadIcon: %s could not be loaded", *File); return NULL; } } img = CreateImage(width, height); if (!img) return NULL; imgCache.InsertImage(img, *File, width, height); return img; }
Sieht für mich komisch aus. Es wird wohl cImage* zurückgegeben und ein Zeiger erwartet?
-
Was soll daran komisch aussehen? Ist halt in C geschrieben, daher schaut das anders aus als typisches C++.
-
DrawImage ist mehrmals vorhanden.
virtual void DrawImage(const cPoint &Point, const cImage &Image) = 0; ///< Draws the given Image into this pixmap at the given Point. virtual void DrawImage(const cPoint &Point, int ImageHandle) = 0; ///< Draws the image referenced by the given ImageHandle into this pixmap at ///< the given Point. ImageHandle must be a value that has previously been ///< returned by a call to cOsdProvider::StoreImage(). If ImageHandle ///< has an invalid value, nothing happens.
Sollte ich also liber & verwenden oder wird das durch die Deklaration automatisch gemacht?
-
... cImage &Image) = 0;
bewirkt, dass die Funktion Dein Image nicht als (möglicherweise aufwendige) Kopie bekommt, sondern eine Referenz darauf, Dein Aufruf muss dafür nicht geändert werden.
-
@MegaV0lt sagte in Frage zu Zeiger:
Sieht für mich komisch aus.
"Sieht komisch aus" ist keine exakte Fragestellung. Sie lässt keine exakte Antwort zu, nur eine ungefähre.
Man kann sagen, zu 90 Prozent erwarten solche Funktionen einen
img*
(Pointer) als Funktionsparameter. Genauso kann man sagen, in 10 Prozent der Fälle wird einimg
als Übergabe erwartet. Man kann allerdings nichts sagen, dieses oder jenes sei richtig oder falsch, ohne die Lib zu kennen.Naja, wie sich nun herausgestellt hat, wird ein
img
weiches nicht kopiert wird erwartet. Aber, ob es modifiziert wird:
-
@meuterei sagte in Frage zu Zeiger:
"Sieht komisch aus" ist keine exakte Fragestellung. Sie lässt keine exakte Antwort zu, nur eine ungefähre.
"Sieht komisch aus" ist gar keine Frage, sondern eine Aussage, und verlangt daher keine Antwort.
Man kann sagen, zu 90 Prozent erwarten solche Funktionen einen
img*
(Pointer) als Funktionsparameter. Genauso kann
man sagen, in 10 Prozent der Fälle wird einimg
als Übergabe erwartet. Man kann allerdings nichts sagen, dieses oder jenes sei richtig oder falsch, ohne die Lib zu kennen.Aha, kann man das so sagen? Es sind also exakt 90%? Oder sogar 91%? Oder nur 89%? Kannst du Belege für deine "Antwort" liefern?
Komplett sinnbefreiter Beitrag... Das kommt dabei rum, wenn man schlau klingen möchte.
-
@DocShoe sagte in Frage zu Zeiger:
Komplett sinnbefreiter Beitrag... Das kommt dabei rum, wenn man schlau klingen möchte.
Ja, der Stil erinnert mich stark an etwas, das ich hier in letzter Zeit schon wiederholt gelesen hab ... sicher nur Einbildung.
-
@meuterei sagte in Frage zu Zeiger:
@MegaV0lt sagte in Frage zu Zeiger:
Sieht für mich komisch aus.
"Sieht komisch aus" ist keine exakte Fragestellung. Sie lässt keine exakte Antwort zu, nur eine ungefähre.
Man kann sagen, zu 90 Prozent erwarten solche Funktionen einen
img*
(Pointer) als Funktionsparameter. Genauso kann man sagen, in 10 Prozent der Fälle wird einimg
als Übergabe erwartet. Man kann allerdings nichts sagen, dieses oder jenes sei richtig oder falsch, ohne die Lib zu kennen.Naja, wie sich nun herausgestellt hat, wird ein
img
weiches nicht kopiert wird erwartet. Aber, ob es modifiziert wird: :man_shrugging:Da die Referenz konstant ist, eher nicht.
-
@Finnegan sagte in Frage zu Zeiger:
@DocShoe sagte in Frage zu Zeiger:
Komplett sinnbefreiter Beitrag... Das kommt dabei rum, wenn man schlau klingen möchte.
Ja, der Stil erinnert mich stark an etwas, das ich hier in letzter Zeit schon wiederholt gelesen hab ... sicher nur Einbildung.
Ja, er ist es. Hat es sogar in seinem ersten Beitrag direkt gesagt.
-
@DocShoe sagte in Frage zu Zeiger:
@meuterei sagte in Frage zu Zeiger:
"Sieht komisch aus" ist keine exakte Fragestellung. Sie lässt keine exakte Antwort zu, nur eine ungefähre.
"Sieht komisch aus" ist gar keine Frage, sondern eine Aussage, und verlangt daher keine Antwort.
Man kann sagen, zu 90 Prozent erwarten solche Funktionen einen
img*
(Pointer) als Funktionsparameter. Genauso kann
man sagen, in 10 Prozent der Fälle wird einimg
als Übergabe erwartet. Man kann allerdings nichts sagen, dieses oder jenes sei richtig oder falsch, ohne die Lib zu kennen.Aha, kann man das so sagen? Es sind also exakt 90%? Oder sogar 91%? Oder nur 89%? Kannst du Belege für deine "Antwort" liefern?
Komplett sinnbefreiter Beitrag... Das kommt dabei rum, wenn man schlau klingen möchte.Nein, du hast ihn nicht verstanden, etwas dämlich. Das ist ein Unterschied. Kurz gesagt: Ein Blödmann weiß selber nicht, dass er blöd ist. Aber andere können dies ihm natürlich sagen.
-
@meuterei sagte in Frage zu Zeiger:
@DocShoe sagte in Frage zu Zeiger:
@meuterei sagte in Frage zu Zeiger:
"Sieht komisch aus" ist keine exakte Fragestellung. Sie lässt keine exakte Antwort zu, nur eine ungefähre.
"Sieht komisch aus" ist gar keine Frage, sondern eine Aussage, und verlangt daher keine Antwort.
Man kann sagen, zu 90 Prozent erwarten solche Funktionen einen
img*
(Pointer) als Funktionsparameter. Genauso kann
man sagen, in 10 Prozent der Fälle wird einimg
als Übergabe erwartet. Man kann allerdings nichts sagen, dieses oder jenes sei richtig oder falsch, ohne die Lib zu kennen.Aha, kann man das so sagen? Es sind also exakt 90%? Oder sogar 91%? Oder nur 89%? Kannst du Belege für deine "Antwort" liefern?
Komplett sinnbefreiter Beitrag... Das kommt dabei rum, wenn man schlau klingen möchte.Nein, du hast ihn nicht verstanden, etwas dämlich. Das ist ein Unterschied. Kurz gesagt: Ein Blödmann weiß selber nicht, dass er blöd ist. Aber andere können dies ihm natürlich sagen.
Du brauchst Dich nicht zu entschuldigen ...
-
@Belli sagte in Frage zu Zeiger:
Du brauchst Dich nicht zu entschuldigen
Wieso redest du denn mit einem gesperrten Benutzer?
-
Du bist ein richtiges Stehaufmännchen ... oh Mann, muss Dein Leben trist sein