TripleD Geschrieben 22. Juli 2004 Geschrieben 22. Juli 2004 Hallo, so jetzt hab ich wieder mal ein Problem, bei dem ich nicht weiter komm. Wie bekomme ich es hin, dass er mir folgenden Code annimmt? m_ctlMsg.AddString(str+":"+m_strMsg); Hoffe es weiß einer Rat. PS: Programmiere unter XP mit VC++ 6 / MFC Gruß TripleD
Crush Geschrieben 22. Juli 2004 Geschrieben 22. Juli 2004 Die Zwei Strings sind als Parameter bestimmt als Zeiger referenziert und werden auch über Zeiger addiert (auch das ";", weil dieser String beim Compilen mit anderen Strings an einer festen Stelle im Data-Segment abgelegt wird). AddString() erwartet - je nach Implementierung - eine einzige Referenz auf einen String. Die Zeigerliste in der Funktion erzeugt leider keinen einzelnen Zeiger. Die Lösung wäre in diesem Fall: Einfach einen 3. String erzeugen und diesen der Funktion übergeben. Es könnte sein, daß es aber auch Funktioniert, wenn Du von m_strMsg den String über eine Funktion, wie z.B. m_strMsg.GetBuffer() oder evtl. mit dem Cast (LPCSTR)m_strMsg abrufst. Kommt drauf an, von welcher Klasse m_strMsg ist.
Guybrush Threepwood Geschrieben 22. Juli 2004 Geschrieben 22. Juli 2004 Sind str und m_strMsg char arrays oder CStrings? Und welchen Datentyp erwartet AddStrig als Parameter?
Crush Geschrieben 23. Juli 2004 Geschrieben 23. Juli 2004 Oder aber: Das ":" wird vermutlich nicht als String erkannt. Da müßte man dann den Operator entweder überschreiben oder einen CString draus konstruieren.
TripleD Geschrieben 23. Juli 2004 Autor Geschrieben 23. Juli 2004 Danke für eure Tips, ich hab das Problem gelöst bekommen. Hab einfach eine neue String-Variable genommen und in diese meine zwei Strings geschrieben. Und diese dritte dann übergeben. Funktioniert jetzt wie es soll. Gruß TripleD
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden