PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : gtk / GString / gpointer



tuxboy
29-06-2003, 19:44
Hi,
wenn ich folgendes versuche, meldet der compiler eine Fehlermeldung:



GString *filepath = g_string_new ("");
gpointer temp;

/* schnipp */
temp = g_list_nth_data (file_clipboard, i);
filepath_temp = g_string_assign (filepath_temp, (GString*)temp->str);
/* schnapp */


Error message:
'void*' ist not a pointer-to-object type.

ist bezogen auf die Zeile filepath_temp = g_string_assign ....

Kann mir bitte jemand helfen...

Viele Grüße,
Robert.

peschmae
30-06-2003, 12:04
Original geschrieben von tuxboy
[B]filepath_temp = g_string_assign (filepath_temp, (GString*)temp->str);

Error message:
'void*' ist not a pointer-to-object type.


ohne c/c++-Pointer wissen:
gibt "temp->str" einen Pter zurück oder net? Wenn net brauchst du dann nicht

"(GString*)&temp->str" oder so?

MfG Peschmä

P.S. wart besser auf tortkamp oder so :cool:

Trillian
30-06-2003, 16:19
typedef void* gpointer; :D

Was du machst, ist den "char *str" des GStrings auf GString casten, das geht natürlich nicht.
Korrekt ist:

filepath_temp = g_string_assign (filepath_temp, ((GString*) temp)->str);