Um in der Lage zu sein, für Sie Schüler hinzufügen, löschen Schüler oder Studenten ändern, ohne Standardbibliothek zu verwenden, müssen Sie zusätzliche Struktur definieren, die Schüler zu verwalten. Sie müssen ID als zusätzliches Feld für den Schüler hinzufügen.
struct StudentList { // Declaration: StudentList sl = new StudenList;
Student *list; // linkedlist used to store any number of students
Student *next; // pointer used to traverse to the next node of list
add(Student s) // Usage: Student s = new Student("Anne",15,3); sl.add(s);
delete(int id); // Usage: std::cin >> id; ls.delete(id);
// Deletes student record with id matching the parameter.
modify(int id); // Usage: std::cin >> id; ls.modify(id);
// Modifies student record with id matching the parameter.
}
natürlich die bei der Umsetzung dieser Funktionen, müssen Sie die Anzahl der Schüler in der Liste zu überprüfen und sicherzustellen, dass es nicht über seine Reichweite geht (0 - max). Da die verkettete Liste in dieser Methode verwendet wird, müssen Sie den Code implementieren, um Knoten zu erstellen, Knoten zu löschen und vom Kopfknoten zum Endknoten zu gehen.
'neuer Student' wird eine neue Instanz der 'Student'-Klasse zuweisen. Sie haben nicht genügend Informationen zur Verfügung gestellt, um festzustellen, ob dies ausreicht, um "einen neuen Schüler hinzuzufügen". Dito zum Löschen eines Schülers. Im modernen C++ wird 'new' /' delete' nur selten benötigt, da C++ - Container in der Regel ausreichen, um dynamische Sammlungen von Objekten zu verwalten. –
Ich denke: Wie werden Sie die Struktur verwenden? Ich mache mir Sorgen, dass Sie einen (falschen) Eindruck haben könnten, dass Sie "neu" schreiben müssen, wann immer Sie eine Struktur verwenden wollen. –
Ich muss X Anzahl der Studenten mit diesen Eigenschaften in meinem Programm speichern. Also habe ich mich entschieden, Strukturen zu verwenden, aber ich mache es wahrscheinlich nur komplizierter. Können Sie einen besseren (und einfacheren) Weg vorschlagen? –