dotfiles/.config/Code/User/History/65ec6aae/JyOk.cpp

86 lines
1.5 KiB
C++
Raw Normal View History

2024-06-16 18:53:25 +05:00
/*
Rafay Ahmad
23I-2526
*/
#include <iostream>
using namespace std;
class Customer{
string name;
string address;
public:
Customer(string name, string address) : name(name), address(address){}
string getName(){
return name;
}
string getAddress(){
return address;
}
};
class Product{
string name;
double price;
public:
Product(string name, double price) : name(name), price(price){}
string getName(){
return name;
}
double getPrice(){
return price;
}
};
class Order{
Customer customer;
struct OrderItem{
Product product;
int qty;
};
OrderItem *items;
int noOfProducts;
public:
Order(Customer customer, Product product, int qty) : customer(customer), noOfProducts(0){
items = new OrderItem[1];
}
~Order(){
delete[] items;
}
void addItem(Product product, int qty){
OrderItem *tmp = new OrderItem[noOfProducts+1];
for(int i=0;i<noOfProducts;i++) tmp[i] = items[i];
tmp[noOfProducts] = {product, qty};
delete[] items;
items = tmp;
noOfProducts++;
}
void displayOrder(){
cout<<"Name: "<<customer.getName()<<endl;
cout<<"Address: "<<customer.getAddress()<<endl;
for(int i=0;i<noOfProducts;i++){
cout<<"product name: "<<items[i].product.getName()<<"\t";
cout<<"product price: "<<items[i].product.getPrice()<<endl;
}
}
};
int main(){
return 0;
}