Esempio di classe vettoriale in tempo reale in C++

Esempio di classe vettoriale in tempo reale in C++

Esempio di classe vettoriale in tempo reale in C++:

Ora vedremo Esempio di classe vettoriale in tempo reale in C++ . Si prega di leggere il nostro articolo precedente in cui abbiamo discusso di Come utilizzare le classi STL in C++ con esempi. Scriveremo un programma per memorizzare e recuperare l'elenco di elementi in un file utilizzando la classe vector in C++.

Classe vettoriale in C++:

Non è altro che l'array. Ma questo non è un array di dimensioni fisse. Questo può crescere e ridursi da solo. In che modo un array può ridursi da solo? Abbiamo dimostrato nei nostri articoli precedenti che dobbiamo creare un array di dimensioni più grandi o piccole e trasferire gli elementi nel nuovo array. Quindi, il vettore gestisce automaticamente quella parte. Questo gestirà dinamicamente la dimensione dell'array. Quindi, questo è un array autogestito. Le funzioni disponibili in Vector sono le seguenti:

  1. push_back ():inserirà l'elemento sul retro in un array.
  2. pop_back ():cancellerà l'ultimo elemento nell'array.
  3. inserisci ():inserirà il valore dato all'indice dato.
  4. rimuovi ():rimuoverà l'elemento in base all'indice specificato.
  5. dimensione ():restituirà la dimensione dell'array.
  6. vuoto ():verificherà se l'array è vuoto o meno.
Esempio di classe vettoriale in tempo reale 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;
}
Risultato:

Nel prossimo articolo parlerò delle Nuove funzionalità di C++ 11 con esempi. Qui, in questo articolo, abbiamo discusso di Esempio in tempo reale di classi vettoriali in C++ e spero che questo articolo ti piaccia.