Fehler:List <String^>^



  • Hallo,
    ich wollte mir eine Methode schreiben,um Duplikate zu löschen.
    Jetzt sitz ich schon lange an der Fehler behebung, komme aber auf keinen
    grünen Zweig.
    Mein code
    [code]
    public: List<String> RemoveItems(List<String> List )
    {
    Dictionary<String^, String^> KeyList = gcnew Dictionary<String^, String^>();
    List <String> NewList = gcnew List<String^>();//<---Fehler
    {
    //Code zum Verarbeiten
    }
    return NewList;
    }
    [code]
    Der Compiler gibt mir aber folgenden Fehler zurück:
    error C2275: 'System::String': Ungültige Verwendung dieses Typs als Ausdruck
    Wie muss ich die List dann deklarieren;
    Ich hoffe,jemand kann mir einen Hinweis geben.
    Grüße
    Ludwig



  • Hihi 🙂
    Vielleicht solltest du dein Parameter nicht "List" nennen...

    In C# geht sowas (meistens? immer?), da anhand des Context erkennbar ist ob es sich um einen Typ oder eine Variable/Property handelt. Aber in C++/CLI geht das nicht.

    Entweder du qualifizierst alle "List" wo du den Typ meinst (mit "System::Collections::Generic::List<T>"), oder du nennst dein Parameter anders.

    Ich würde Parameter umbenennen empfehlen.

    Wenn du dich daran hältst Parameter und lokale Variablen mit Kleinbuchstaben zu beginnen, und Klassen mit Grossbuchstaben zu beginnen, hast du solche Probleme kaum.



  • Hallo,
    danke,
    das wars !

    Grüße
    Ludwig


Anmelden zum Antworten