Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // programowanie_obiektowe.cpp : Ten plik zawiera funkcję „main”. W nim rozpoczyna się i kończy wykonywanie programu.
- #include "pch.h"
- #include <iostream>
- #include <string>
- #include "Assassin.h"
- #include "Gang.h"
- using namespace std;
- void create(Gang *&ptr, int size) {
- ptr = new Gang[size];
- for (int i = 0; i < size; i++) {
- ptr[i].init();
- }
- }
- void create(Assassin *&ptr, int size) {
- ptr = new Assassin[size];
- for (int i = 0; i < size; i++) {
- ptr[i].init();
- }
- }
- void create(Gang **&ptr, int size) {
- ptr = new Gang *[size];
- for (int i = 0; i < size; i++) {
- ptr[i] = new Gang[1];
- ptr[i][1].init();
- }
- }
- void create(Assassin **&ptr, int size) {
- ptr = new Assassin *[size];
- for (int i = 0; i < size; i++) {
- ptr[i] = new Assassin[1];
- ptr[i][1].init();
- }
- }
- void delete_memory(Gang *&ptr) {
- if (ptr == nullptr) {
- return;
- }
- else {
- delete ptr;
- ptr = nullptr;
- }
- }
- void delete_memory(Gang **&ptr, int n) {
- if (ptr == nullptr) {
- return;
- }
- else {
- for (int i = 0; i < n; i++) {
- delete[] ptr[n];
- }
- delete[] ptr;
- ptr = nullptr;
- }
- }
- void delete_memory(Assassin *&ptr) {
- if (ptr == nullptr) {
- return;
- }
- else {
- delete ptr;
- ptr = nullptr;
- }
- }
- void delete_memory(Assassin **&ptr, int n) {
- if (ptr == nullptr) {
- return;
- }
- else {
- for (int i = 0; i < n; i++) {
- delete[] ptr[n];
- }
- delete[] ptr;
- ptr = nullptr;
- }
- }
- void add(Assassin *&ptr, int &size, int where = -1) {
- Assassin *sup_ptr = new Assassin[size + 1];
- for (int i = 0; i < size + 1; i++) {
- if (i == where) {
- sup_ptr[i].init();
- }
- else if (i > where && where >= 0) {
- sup_ptr[i] = ptr[i - 1];
- }
- else if (i == size && where < 0) {
- sup_ptr[i].init();
- }
- else {
- sup_ptr[i] = ptr[i];
- }
- }
- delete[] ptr;
- ptr = sup_ptr;
- ++size;
- }
- void add(Assassin **&ptr, int &size, int where = -1) {
- Assassin **sup_ptr = new Assassin *[size + 1];
- for (int i = 0; i < size + 1; i++) {
- if (i == where) {
- sup_ptr[i] = new Assassin;
- sup_ptr[i][1].init();
- }
- else if (i > where && where >= 0) {
- sup_ptr[i][1] = ptr[i - 1][1];
- }
- else if (i == size && where < 0) {
- sup_ptr[i][1].init();
- }
- else {
- sup_ptr[i][1] = ptr[i][1];
- }
- }
- delete[] ptr;
- ptr = sup_ptr;
- ++size;
- }
- void add(Gang *&ptr, int &size, int where = -1) {
- Gang *sup_ptr = new Gang[size + 1];
- for (int i = 0; i < size + 1; i++) {
- if (i == where) {
- sup_ptr[i].init();
- }
- else if (i > where && where >= 0) {
- sup_ptr[i] = ptr[i - 1];
- }
- else if (i == size && where < 0) {
- sup_ptr[i].init();
- }
- else {
- sup_ptr[i] = ptr[i];
- }
- }
- delete[] ptr;
- ptr = sup_ptr;
- ++size;
- }
- void add(Gang **&ptr, int &size, int where = -1) {
- Gang **sup_ptr = new Gang *[size + 1];
- for (int i = 0; i < size + 1; i++) {
- if (i == where) {
- sup_ptr[i] = new Gang;
- sup_ptr[i][1].init();
- }
- else if (i > where && where >= 0) {
- sup_ptr[i][1] = ptr[i - 1][1];
- }
- else if (i == size && where < 0) {
- sup_ptr[i][1].init();
- }
- else {
- sup_ptr[i][1] = ptr[i][1];
- }
- }
- delete[] ptr;
- ptr = sup_ptr;
- ++size;
- }
- void remove(Assassin **&ptr, int &size, int where) {
- Assassin **sup_ptr = new Assassin *[size - 1];
- for (int i = 0; i < size; i++) {
- if (i == where) {
- delete ptr[i];
- }
- else if (i < where) {
- sup_ptr[i] = ptr[i];
- }
- else {
- sup_ptr[i - 1] = ptr[i];
- }
- }
- delete[] ptr;
- ptr = sup_ptr;
- --size;
- }
- void remove(Gang **&ptr, int &size, int where) {
- Gang **sup_ptr = new Gang *[size - 1];
- for (int i = 0; i < size; i++) {
- if (i == where) {
- delete ptr[i];
- }
- else if (i < where) {
- sup_ptr[i] = ptr[i];
- }
- else {
- sup_ptr[i - 1] = ptr[i];
- }
- }
- delete[] ptr;
- ptr = nullptr;
- ptr = sup_ptr;
- --size;
- }
- void remove(Assassin *&ptr, int &size, int where) {
- Assassin *sup_ptr = new Assassin [size - 1];
- for (int i = 0; i < size; i++) {
- if (i < where) {
- sup_ptr[i] = ptr[i];
- }
- else {
- sup_ptr[i - 1] = ptr[i];
- }
- }
- delete[] ptr;
- ptr = sup_ptr;
- --size;
- }
- void remove(Gang *&ptr, int &size, int where) {
- Gang *sup_ptr = new Gang [size - 1];
- for (int i = 0; i < size; i++) {
- if (i < where) {
- sup_ptr[i] = ptr[i];
- }
- else {
- sup_ptr[i - 1] = ptr[i];
- }
- }
- delete[] ptr;
- ptr = sup_ptr;
- --size;
- }
- //void menu(Gang *&ptr_gang, Gang **&ptr_gangs, Assassin *&ptr_assassin, Assassin **&ptr_assassins) {
- // int wybor = 0;
- // int ile = 0;
- // cout << "Wpisz : " << endl;
- // cout << "[1] aby stworzyc obiket/obiekty klasy Gang" << endl;
- // cout << "[2] aby stworzyc obiekt/obikety klasy Zabojca" << endl;
- // cout << "[3] aby wyswietlic stworzone obiekty" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // cin >> wybor;
- //
- // while (wybor != 0) {
- // switch (wybor) {
- //
- // case 1:
- // cout << "[1] aby dodac pojedynycz obiekt klasy Gang" << endl;
- // cout << "[2] aby dodac wiele obiektow klasy Gang" << endl;
- // cout << "[3] aby dodac obiekt do istniejacej tablicy obiektow klasy gang" << endl;
- // cout << "[4] aby usunac obiekt z istniejacej tablicy obiektow klasy gang" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // cin >> wybor;
- // cin.get();
- // while (wybor != 0) {
- // switch (wybor) {
- // case 1:
- // create(ptr_gang);
- // ptr_gang->init();
- // break;
- // case 2:
- // cout << "ile chcesz stworzyc obiektow ? ";
- //
- // cin >> ile;
- // cin.get();
- // create(ptr_gangs, ile);
- // for (int i = 0; i < ile; i++) {
- // ptr_gangs[i]->init();
- // }
- // break;
- // case 3:
- // cout << "w ktorym miejscu chcesz dodac obkiet : ";
- // cin >> wybor;
- // add(ptr_gangs, ile, wybor);
- // break;
- // case 4:
- // cout << "w ktorym miejscu chcesz usunac obiekt : ";
- // cin >> wybor;
- // remove(ptr_gangs, ile, wybor);
- // break;
- // case 0:
- //
- // break;
- //
- // default:
- // cout << "[1] aby dodac pojedynycz obiekt klasy Gang" << endl;
- // cout << "[2] aby dodac wiele obiektow klasy Gang" << endl;
- // cout << "[3] aby dodac obiekt do istniejacej tablicy obiektow klasy gang" << endl;
- // cout << "[4] aby usunac obiekt z istniejacej tablicy obiektow klasy gang" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // break;
- // }
- // cout << "[1] aby dodac pojedynycz obiekt klasy Gang" << endl;
- // cout << "[2] aby dodac wiele obiektow klasy Gang" << endl;
- // cout << "[3] aby dodac obiekt do istniejacej tablicy obiektow klasy Gang" << endl;
- // cout << "[4] aby usunac obiekt z istniejacej tablicy obiektow klasy gang" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // cin >> wybor;
- // cin.get();
- // }
- // break;
- // case 2:
- // cout << "[1] aby dodac pojedynycz obiekt klasy Zabojca" << endl;
- // cout << "[2] aby dodac wiele obiektow klasy Zabojca" << endl;
- // cout << "[3] aby dodac obiekt do istniejacej tablicy obiektow klasy Zabojca" << endl;
- // cout << "[4] aby usunac obiekt z istniejacej tablicy obiektow klasy Zabojca" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // cin >> wybor;
- // cin.get();
- // while (wybor != 0) {
- // switch (wybor) {
- // case 1:
- // create(ptr_assassin);
- // ptr_assassin->init();
- // break;
- // case 2:
- // cout << "ile chcesz stworzyc obiktow ? ";
- //
- // cin >> ile;
- // cin.get();
- // create(ptr_assassins, ile);
- // for (int i = 0; i < ile; i++) {
- // ptr_assassins[i]->init();
- // }
- // break;
- // case 3:
- // cout << "w ktorym miejscu chcesz dodac obkiet : ";
- // cin >> wybor;
- // add(ptr_assassins, ile, wybor);
- // break;
- // case 4:
- // cout << "w ktorym miejscu chcesz usunac obiekt : ";
- // cin >> wybor;
- // remove(ptr_assassins, ile, wybor);
- // break;
- // case 0:
- //
- // break;
- //
- // default:
- // cout << "[1] aby dodac pojedynycz obiekt klasy Zabojca" << endl;
- // cout << "[2] aby dodac wiele obiektow klasy Zabojcow " << endl;
- // cout << "[3] aby dodac obiekt do istniejacej tablicy obiektow klasy Zabojca" << endl;
- // cout << "[4] aby usunac obiekt z istniejacej tablicy obiektow klasy Zabojca" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // break;
- // }
- // cout << "[1] aby dodac pojedynycz obiekt klasy Zabojca" << endl;
- // cout << "[2] aby dodac wiele obiektow klasy Zabojca" << endl;
- // cout << "[3] aby dodac obiekt do istniejacej tablicy obiektow klasy Zabojca" << endl;
- // cout << "[4] aby usunac obiekt z istniejacej tablicy obiektow klasy Zabojca" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // cin >> wybor;
- // cin.get();
- // }
- // break;
- // case 3:
- // if (ptr_gang != nullptr) {
- // ptr_gang->show();
- // cout << endl;
- // }
- // if (ptr_gangs != nullptr) {
- // for (int i = 0; i < ile; i++) {
- // ptr_gangs[i]->show();
- // }
- // cout << endl;
- // }
- // if (ptr_assassin != nullptr) {
- // ptr_assassin->show();
- // cout << endl;
- // }
- // if (ptr_assassins != nullptr) {
- // for (int i = 0; i < ile; i++) {
- // ptr_assassins[i]->show();
- // }
- // cout << endl;
- // }
- //
- //
- // break;
- // case 0:
- // break;
- //
- // default:
- // cout << "Wpisz : " << endl;
- // cout << "[1] aby stworzyc obiket/obiekty klasy Gang" << endl;
- // cout << "[2] aby stworzyc obiekt/obikety klasy Zabojca" << endl;
- // cout << "[3] aby wyswietlic stworzone obiekty" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // break;
- // }
- // cout << "Wpisz : " << endl;
- // cout << "[1] aby stworzyc obiket/obiekty klasy Gang" << endl;
- // cout << "[2] aby stworzyc obiekt/obikety klasy Zabojca" << endl;
- // cout << "[3] aby wyswietlic stworzone obiekty" << endl;
- // cout << "[0] aby zaknocznyc" << endl;
- // cin >> wybor;
- // }
- //
- //}
- int main(int argc, char** argv)
- {
- Gang *ptr_gang = nullptr;
- Gang **ptr_gangs = nullptr;
- Assassin *ptr_assassin = nullptr;
- Assassin **ptr_assassins = nullptr;
- //menu(ptr_gang, ptr_gangs, ptr_assassin, ptr_assassins);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement