parameterübergabe
-
Alexo schrieb:
ok, danke devil
und wie kann ich den inhalt kopieren?Wieso arbeitest du nicht gleich mit dem übergebenen Zeiger ?
Ansonsten könntest du noch dereferenzieren :
*pointer = *anderer_pointer;
mit * greifst du auf den Inhalt zu.Allerding weiss ich nicht, was BODY ist, evtl. gibts da Probleme.
Devil
-
Alexo schrieb:
ok, danke devil
und wie kann ich den inhalt kopieren?Ich bin nicht devil.
Code-Hacker
-
Bashar schrieb:
C++ arbeitet mit Call-by-Value, d.h. es werden grundsätzlich Kopien der Argumente übergeben. Es gibt 2 Auswege, einmal Pointer und einmal Referenzen.
// 1. Übergabe per Pointer void importfile(BODY** b) { *b = ... } // 2. Übergabe per Referenz void importfile(BODY*& b) { b = ... }Die Antwort wurde doch bereits gegeben. Nur noch mal Zitiert falls dies (wegen meinem Unverständnis für die Frage, habs halt nich kapiert O
untergegangen ist.
-
Wenn es trotz meiner Antwort nicht funktioniert, muss der Fehler in der Funktion importfile liegen. Poste die doch mal, wenn sie nicht zu lang ist.
-
Bashar die funktion hat hat vorher funktioniert, aber das parameter was ich übergeben möchte, dass ist ein default-parameter, liegt es vielleicht daran?
den der compiler meckert nur deswegen.
-
Entweder stell ich mich besonders blöd an (mag sein, Bashar wusste auch vorhin die Antwort) oder ich benutze meine Kristallkugel nicht richtig.
Ums Umgangssprachlich auszudrücken:
häää ?
Eventuell hilft:
void foo(int para1,int para,....,BODY ** fBody = NULL)
weiter. Was mault der Compiler denn ?
P.s.: Magst Dich nich registrieren ?
Hat nur Vorteile 
-
schau knuddi, ich hab auf dich gehört und mich angemeldet.
Knuddi sag mir mal jetzt
wie mach die funktionaufruf?ich habe ja
BODY* body = NULL;und rufe die
funktion so auf:importfile(par1,par2,par3, body);
und kriege fehler meldung dafür:error C2664: 'importFile' : cannot convert parameter 4 from 'class BODY *' to 'class BODY ** '
-
Ah thx für die Anmeldung
So schaut das besser aus 
thx für die Fehlermeldung, nu weiß ich auch was Du meinst.
Versuchs mal so:
importfile(par1,par2,par3, &body);Du brauchst ja nun den Zeiger auf den "Zeiger"

p.s.: Du heisst nicht zufällig Hoffmann o.ä. ? Knuddi werd ich extrem selten genannt ;o)
-
Die Adresse des Zeigers übergeben, nicht den Zeiger selbst: &body
Devil
-
Hey Danke leute
Warum den nicht gleich so??
Nein ich heisse net Hoffman, knuddi. Ich nehm einfach für alles ne abkürzung, gewohnheit.
-
[ot]Ja die meisten kürzen es ab mit "Knuddl"
[/ot]