Lösung für account aufnahme. Klasse -> Mehrfach instanzen?



  • ich grüsse euch!

    ich stehe vor einem problem das ich gerade versuche elegant zu lösen.
    der benutzer hat die möglichkeit email accounts in einer TListView hinzuzufügen, bearbeiten und wieder löschen. ich als programmierer muss dann seine accounts verwalten/nutzen. Für das verwalten dachte ich an eine Klasse wie z.B. CMailAccounts oder so. Dort möchte ich dann die email adresse, benutzername, passwort, server, etc. verwalten. Soweit so gut.

    Jetzt kommt das eigentliche problem.
    Mein gedanke ist ein array der klasse CMailAccounts anhand der grösse des TListView count dynamisch zu erzeugen.
    Da ich ja dann über einen index arbeite (ich hoffe TListView bietet sowas wie TListBox. Habe noch nie gross mit TListView gearbeitet) muss der index der TListView mit dem index des klassen array übereinstimmen um die korrekten daten zu verwalten/nutze.

    Also ich könnte dann sowas wie:

    CMailAccounts *Account[count von TListView] = new CMailAccounts;
    

    machen. So kann ich ja dann über Account[index_von_TListView] auf die benötigte instanz zugreifen, oder? Dann kommt aber das problem wenn der benutzer zur laufzeit einen weiteren account hinzufügt oder löscht. Dann ändert sich count und mein klassen array stimmt hinten und vorne nicht mehr.

    könnt ihr mein problem nachvollziehen? Wie löse ich sowas am effizientesten?



  • Mit einem dynamischen Array wie TList oder std::vector. Siehe z.B. die FAQ im Abschnitt "Komponenten benutzen"


Anmelden zum Antworten