Probleme mit delete (Base64 Coder ...Umfangreich)



  • Danke!

    Ich habe den Code zum grossen Teil übernommen. Und leider habe ich von Vektoren noch keinen Plan. Dachte nur Ihr könntet helfen.

    Vielleicht findet sich ja noch einer, der ein wenig Nachsicht mit uns hat, zumal wir keine Programmierer sind.
    Dafür sind wir doch gar nicht sooo schlecht, als dass man uns unsere Fehler ständig unter die Nase reiben muss.
    Eine Lösung und dann Kritik ... DAS WÄRE COOL!!

    Danke!



  • Hallo,

    Mir fällt z.Bsp. bei GetEncoded auf, dass du für den Fall length2>length bei m_source2 in nicht allozierten Speicher schreibst.



  • @Guenter Mies:

    Du holst nirgendwo mit new Speicher für m_source, du kopierst nur den Zeiger von m_quelle. Daher darfst du auch m_source nicht mit delete freigeben.

    Der Fall, den Braunstein beschreibt, tritt tatsächlich ein.



  • Ich würde vorschlagen es so zu machen, wie MFK vorschlägt. Schau Dir an wie std::vector funktioniert. Es gibt viele Beispiele hier im Forum (Suchfunktion!) und wenn Du was nicht verstehst frag nach. Dann ersetzt mal alles und Du wirst sehen: mit hohere Wahrscheinlichkeit funktioniert es dann schon.

    btw.: den lookuptable würd ich eher als

    char * lookuptable = "ABCDEF..."; machen. Da kannste auch reinindizieren. Und mach ihn static in die Klasse, dann mußte nicht bei jedem Funktionsaufruf frisch anlegen.



  • Danke für die Tipps!

    Werde es mir die Tage nochmals genauer anschauen. Muss erstmal Abstand gewinnen und werde daher die Base64 Routine vorerst gegen etwas einfacheres ersetzen.

    Aber so weit waren die Tipps schon sehr hilfreich.

    Gruß
    Günni



  • Du bist ja offenbar mit MSVC zu Gange. Weißt du, dass es da fertige Funktionen gibt?

    Base64Decode und Base64Encode aus <atlenc.h>



  • [doppelt]



  • @ MFK

    Gehört das es eine include für base64 gibt haben wir schon!
    Nur leider gibt es diese Funktionalität (scheinbar) nicht auf eVC und genau da soll es laufen!

    atlenc.h ist diese header in der standardbiblothek won MSVC vorhanden? Offenbar nicht, sonst könnte ich sie ja einfach includieren, weißt du wo wir Sie herbekommen?

    Mann könnte ja mal testen .. .. ..

    Sven ( && Günni)



  • atlenc.h ist bei Visual Studio.NET 2003 dabei. Die Funktionen sind AFAIK inline, also könnte man sie direkt rauskopieren.



  • hmm haben leider kein .NET

    ???

    sven


Anmelden zum Antworten