Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Elemente einer Struktur löschen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
21.10.2004, 19:04 Uhr
~Schwabi
Gast


Hallo,
ich möchte in meinem Programm Elemente einer Struktur löschen.
Bsp.:
Struktur mit Patienten

Code:

struct TPatient
{
    char Name[80]
    ............
};

void main()
{
  TPatient *Person;
  Person = new TPatient[a];

  //Zugriff
  strcpy( (Person+a)->Name, "Müller" );

  //nun möcht ich ähnlich wie mit 'delete' einzelne Felder löschen
}




Ich hab nur nich so wirklich den Plan wie. Hab schon ma gegoogelt aber da findet sich nich nix.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
21.10.2004, 19:10 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


so einfach löschen geht nicht...
du kannst höchstens überschreiben und dir merken wieiviele bzw an welchen stellen wirklich personen im array gespeichert sind und welche stellen nicht valide sind.

aber die allokierte menge an speicher bleibt so lange gleich bis du komplett neu allokierst...

schwierig dir ne brauchbare antwort zu geben wenn man niht genau weisst was du machen willlst...
aber da du anscheinend c++ verwendest empfliehlt es sich dieses speichermanagement von einer stl-containerklasse erledigen zu lassen statt sich selber damit zu quälen...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
21.10.2004, 19:19 Uhr
~schwabi
Gast


Jo, so ganz hab ich nich verstanden wo drauf du hinaus willst, aber teilweise.
Noch mal zur Aufgabe, ich soll das ganze für die Schule machen. Und soll eine Warteschlange simulieren. Wir ham zwar mal was von Listen gehabt. Aber ich hab nich mehr wirklich nen Plan davon.
Hast du zufällig ein gutes Howto parrat ???
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
21.10.2004, 21:46 Uhr
(un)wissender
Niveauwart


Hier mal ein unvollständiger Ansatz für sich.


C++:
#include <algorithm>
#include <iostream>
#include <iterator>
#include <string>
#include <list>

template <typename T>
class WarteSchlange
{
public:
    void insert(const T& element)
    {
        data_.push_back(element);
    }

    bool isEmpty() const
    {
        return data_.empty();
    }

    const T& next() const
    {
        return data_.front();
    }
    
    void remove(const T& element)
    {
        data_.remove(element);
    }
    
    friend std::ostream & operator<<(std::ostream &out,
                                     const WarteSchlange& schlange)
    {
        std::copy(schlange.data_.begin(),
                  schlange.data_.end(),
                  std::ostream_iterator<T>(out," "));
        return out;
    }

private:
    std::list<T> data_;
};


int main()
{
     WarteSchlange<std::string> schlange;
     schlange.insert("erster");
     schlange.insert("zweiter");
     schlange.insert("dritter");
     std::cout << schlange << std::endl;
     if(!schlange.isEmpty())
     {
        schlange.remove("zweiter");
        std::cout << schlange << std::endl;
        std::cout << schlange.next() <<std::endl;
     }
     return 0;
}


--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: