Vektorklassen-Echtzeitbeispiel in C++

Vektorklassen-Echtzeitbeispiel in C++

Vektorklassen-Echtzeitbeispiel in C++:

Nun sehen wir Vektorklassen-Echtzeitbeispiel in C++ . Bitte lesen Sie unseren vorherigen Artikel, in dem wir die Verwendung von STL-Klassen in C++ besprochen haben mit Beispielen. Wir schreiben ein Programm zum Speichern und Abrufen der Liste der Elemente in einer Datei mithilfe der Vektorklasse in C++.

Vektorklasse in C++:

Es ist nichts als nur das Array. Dies ist jedoch kein Array mit fester Größe. Diese kann von selbst wachsen und abnehmen. Wie kann sich ein Array von selbst reduzieren? Wir haben in unseren vorherigen Artikeln gezeigt, dass wir ein größeres oder kleineres Array erstellen und die Elemente in das neue Array übertragen müssen. Der Vektor verwaltet diesen Teil also automatisch. Dadurch wird die Größe des Arrays dynamisch verwaltet. Dies ist also ein selbstverwaltetes Array. Folgende Funktionen stehen in Vector zur Verfügung:

  1. push_back ():Es fügt das hinterste Element in ein Array ein.
  2. pop_back ():Es wird das letzte Element im Array gelöscht.
  3. Einfügen ():Es fügt den angegebenen Wert am angegebenen Index ein.
  4. entfernen ():Es wird das Element um den angegebenen Index entfernen.
  5. Größe ():Gibt die Größe des Arrays zurück.
  6. leer ():Es wird überprüft, ob das Array leer ist oder nicht.
Vektorklassen-Echtzeitbeispiel in C++:
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;

class Item
{
    private:
    string name;
    float price;
    int qty;
    public:
    Item ()
    {
    }
    Item (string n, float p, int q);
    friend ifstream & operator >> (ifstream & fis, Item & i);
    friend ofstream & operator << (ofstream & fos, Item & i);
    friend ostream & operator << (ostream & os, Item & i);
};

int main()
{
    int n;
    string name;
    float price;
    int qty;

    cout << "Enter number of Item: ";
    cin >> n;

    vector < Item * >list;
    cout << "Enter All Item: " << endl;
    for (int i = 0; i < n; i++)
    {
        cout << "Enter " << i + 1 << " Item Name , price and quantity: ";
        cin >> name;
        cin >> price;
        cin >> qty;
        list.push_back (new Item (name, price, qty));
    }

    ofstream fos ("Items.txt");
    vector < Item * >::iterator itr;
    for (itr = list.begin (); itr != list.end (); itr++)
    {
        fos << **itr;
    }

    Item item;
    ifstream fis ("Items.txt");
    for (int i = 0; i < n; i++)
    {
        fis >> item;
        cout << "Item " << i << endl << item << endl;
    }
}

Item::Item (string n, float p, int q)
{
    name = n;
    price = p;
    qty = q;
}

ofstream & operator << (ofstream & fos, Item & i)
{
    fos << i.name << endl << i.price << endl << i.qty << endl;
    return fos;
}

ifstream & operator >> (ifstream & fis, Item & i)
{
    fis >> i.name >> i.price >> i.qty;
    return fis;
}

ostream & operator << (ostream & os, Item & i)
{
    os << i.name << endl << i.price << endl << i.qty << endl;
    return os;
}
Ausgabe:

Im nächsten Artikel werde ich auf Neue Funktionen von C++ 11 eingehen mit Beispielen. Hier, in diesem Artikel, haben wir das Vektorklassen-Echtzeitbeispiel in C++ besprochen und ich hoffe, Ihnen gefällt dieser Artikel.