Lady_Lilith Geschrieben 4. September 2008 Geschrieben 4. September 2008 Hallöchen. Mein Ausbilder hat mir dieses hier gegeben, um es zu verstehen ô.O Und zwar unter dem Hauptaspekt der Vererbung. Ich habe bisher angefangen, mich ein wenig mit C# rumzuschlagen, aber dies hie rist jetzt in C++. Ich habe absolut keine Ahnung, was ich damit anfangen soll, bzw. wie es warum so funktioniert. Kann mir das wer erklären, was da so vor sich geht? Wäre echt lieb! template <class T> BOOL BenutzerVerwaltung::RemapUsers(CMyTableDB<T>& table, const Dict(long, long)&dictUsers) { CTPA(T*) entries; T *entry; long oldKey = 0; table.Auflisten(entries); FOR (entries, entry) { if (entry == NULL) { continue; } oldKey = entry->ForeignKey(); if (dictUsers.Lookup(oldKey, newKey) != && oldKey != newKey) { entry->Remap(newKey); table.ModEintrag(entry, entry->PrimaryKey()); } } ArrayLoeschen(entries); return TRUE; } <Migration> ... if (Synchronisiere(dbID)) { RemapUsers(tPflegeDB->m_Nachricht, dictBenutzer); RemapUsers(tPflegeDB->m_NachrichtKonfig, dictBenutzer); RemapUsers(tPflegeDB->m_Controls, dictBenutzer); RemapUsers(tPflegeDB->m_UserRechteES, dictBenutzer); } ... </Migration> class Mappable { public: Mappable(void); ~Mappable(void); virtual long PrimaryKey() = 0; virtual long ForeignKey() = 0; virtual void Remap(long primaryKey) = 0; }; class CNachricht : Mappable { ... //Mappable Implementation long PrimaryKey() { return Z_NA; } long ForeignKey() { return iBenutzer; } void Remap(long primaryKey) { iBenutzer = primaryKey; } }; } Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.