Aplicatie pentru Gestiunea Trenurilor

Referat
8/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 9 în total
Cuvinte : 1373
Mărime: 12.27KB (arhivat)
Cost: 4 puncte
Profesor îndrumător / Prezentat Profesorului: Ionita Cristian
Proiect pentru POO- contine clase, constructori, mosteniri, functii virtuale, supraincarcari si template

Extras din document

// Aplicatie pentru gestiunea trenurilor

// Mostenire: Se defineste clasa de baza Vagon. Clasele VagonMarfa si VagonPersoane mostenesc clasa Vagon. Clasele VagonClasaI, VagonCuseta sunt derivate din clasele anterioare

// Supraincarcare operatori- Cu ajutorul clasei Tren- am supraincarcat operatori =, >> si <<

// Functiile virtuale- apartin vagoanelor- descriere

// Clasa Template - formarea de Garnituri prin constructor cu parametru si supraincarcare operatori +, == si !=

#include <conio.h>

#include <iostream>

#include <fstream>

#include <string.h>

using namespace std;

class Vagon

{

private:

int serie;

char *denumire;

int nrRoti;

public:

//constructor implicit

Vagon()

{

this->serie = 0;

this->denumire = NULL;

this->nrRoti=8;

}

//constructor cu trei parametri

Vagon(int s, char *den, int nrr)

{

this->serie = s;

this->denumire = new char[strlen(den)+1];

strcpy(this->denumire,den);

this->nrRoti=nrr;

}

//constructor de copiere Vagon

Vagon(Vagon& v)

{

this->serie=v.serie;

this->denumire=new char[strlen(v.denumire)+1];

strcpy(this->denumire,v.denumire);

this->nrRoti=v.nrRoti;

}

//operator = Vagon

Vagon& operator=(Vagon &v)

{

this->serie=v.serie;

delete [] this->denumire;

this->denumire=new char[strlen(v.denumire)+1];

strcpy(this->denumire,v.denumire);

this->nrRoti=v.nrRoti;

return *this;

}

//destructor

~Vagon()

{

delete [] this->denumire;

}

//metode de acces get si set

int getSerie()

{

return this->serie;

}

char* getDenumire()

{

return this->denumire;

}

int getNrRoti()

{

return this->nrRoti;

}

void setSerie(int a)

{

this->serie=a;

}

void setDenumire(char *den)

{

this->denumire=den;

}

void setNrRoti(int n)

{

this->nrRoti=n;

}

//functie virtuala

virtual void transporta()

{

cout<<"Vagonul - transporta marfa sau persoane."<<endl;

}

};

class VagonMarfa : virtual public Vagon

{

private:

int tonaj;

char* transport;

public:

VagonMarfa()

{

//constructor implicit

this->tonaj= 22;

this->transport=NULL;

}

VagonMarfa(int t, char* tr)

{

//constructor cu 2 parametri

this->tonaj=t;

this->transport = new char[strlen(tr)+1];

strcpy(this->transport,tr);

}

VagonMarfa(int t, char* tr, int s, char *dn, int nrr) : Vagon(s, dn, nrr)

{

//constructor cu 4 parametri.

Preview document

Aplicatie pentru Gestiunea Trenurilor - Pagina 1
Aplicatie pentru Gestiunea Trenurilor - Pagina 2
Aplicatie pentru Gestiunea Trenurilor - Pagina 3
Aplicatie pentru Gestiunea Trenurilor - Pagina 4
Aplicatie pentru Gestiunea Trenurilor - Pagina 5
Aplicatie pentru Gestiunea Trenurilor - Pagina 6
Aplicatie pentru Gestiunea Trenurilor - Pagina 7
Aplicatie pentru Gestiunea Trenurilor - Pagina 8
Aplicatie pentru Gestiunea Trenurilor - Pagina 9

Conținut arhivă zip

  • Aplicatie pentru Gestiunea Trenurilor.doc

Alții au mai descărcat și

Arhitectura Calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Probleme POO

/*Implementati o clasa pentru realizarea de operatii cu numere complexe, o functie friend care calculeaza distanta dintre 2 numere complexe si...

Ai nevoie de altceva?