Startparameter für eine CStringList - Gibs das?



  • Startparameter für eine CStringList - Gibs das?

    Hab schon;
    - ""
    - {""}
    - NULL

    Alles versucht. Aber nix hilft.



  • Erklärst du bitte genauer, was du mit dem Parameter erreichen willst?



  • Ich will erreichen, dass ich bei meinem Funktionaufruf ein leeren CStringList übergebe, wenn ich nix eingebe.

    Also z.B.:
    void MeineFunktion(CStringList MeineListe = NULL);



  • Ich muss vorausschicken, dass ich immer noch nicht weiß, ob ich dich richtig verstanden habe. Falls ja, dann sehe ich zwei Möglichkeiten:

    Aufruf durch

    void MeineFunktion(CStringList * pMeineListe = NULL)
    

    Du übergibst dann natürlich eine Referenz und musst entsprechend reagieren, falls die Liste nicht da ist.
    Oder mit einer zusätzlichen Definition:

    void MeineFunktion(CStringList MeineListe){
        ......
    };
    void MeineFunktion(){
        CStringList TempListe;
        MeineFunktion(TempListe);
    }
    

    Eine direkte Zuweisung der NULL ist nicht möglich.



  • Hi,

    wenn du eine StringListe erstellst, ist sie eigentlich immer leer.

    Und wenn sich etwas in der Liste befindet und du willst eine leere Liste übergeben, dann kannst du sie mit der "RemoveAll()" Methode der CStringList Klasse leeren.

    MFG
    Kai

    PS. Ich hoffe das hilft dir weiter, weil auch mir nichtganz klar ist was du vor hast. 🙄



  • @KaiE

    An deine Version hab ich zunächst auch gedacht. Ich schätze aber, dass er die Möglichkeit haben will, eine teilgefüllte Liste zu übergeben, falls eine vorhanden ist.
    Vielleicht bekommen wir es noch erklärt . 🙂


Anmelden zum Antworten