📄 advertisement.cpp
字号:
#include "Advertisement.h"
//using namespace std;
static int c = 1;
Advertisement::Advertisement() : number(c),quantity(0),title(""),seller_email(""),body("")
{ c++; }
Advertisement::Advertisement(string title, string seller_email, string body,
Date start, Date close, int quantity) :
quantity(quantity),title(title),seller_email(seller_email),body(body),start(start),close(close)
{ number = c; c++; }
Advertisement::Advertisement(const Advertisement &a){
number = a.getNumber();
quantity = a.getQuantity();
title = a.getTitle();
seller_email = a.getEmail();
body = a.getBody();
start = a.getStart();
close = a.getClose();
}
void Advertisement::setStart (const Date &start){
this->start = start;
}
void Advertisement::setClose (const Date &close){
this->close = close;
}
void Advertisement::setTitle (string title){
this->title = title;
}
void Advertisement::setBody (string body){
this->body = body;
}
void Advertisement::setNumber (int number){
this->number = number;
}
void Advertisement::setEmail (string email){
seller_email = email;
}
void Advertisement::setQuantity (int quantity){
this->quantity = quantity;
}
Date Advertisement::getStart () const{
return start;
}
Date Advertisement::getClose () const{
return close;
}
string Advertisement::getTitle() const{
return title;
}
string Advertisement::getBody() const{
return body;
}
string Advertisement::getEmail() const{
return seller_email;
}
int Advertisement::getNumber () const{
return number;
}
int Advertisement::getQuantity() const{
return quantity;
}
bool Advertisement::operator==(const Advertisement& a) const{
if(number==a.getNumber())
return true;
return false;
}
istream &operator>>(istream &stream, Advertisement &a){
string s;
int q;
//char c;
Date d;
stream>>s;
a.setTitle(s);
stream>>s;
a.setEmail(s);
stream>>q;
a.setQuantity(q);
stream>>d;
a.setStart(d);
stream>>d;
a.setClose(d);
stream>>s;
a.setBody(s);
return stream;
}
priority_queue<Bid>& Advertisement::getBids(void) {
return bids;
}
vector<Bid> Advertisement::getTopDutchBids (void) const {
vector<Bid> result;
priority_queue<Bid> tempBids = bids;
if(tempBids.empty()) {
return result;
} else {
for(int i = 0; i < this->getQuantity();) {
Bid b = tempBids.top();
result.push_back(b);
tempBids.pop();
i += b.getQuantity();
}
}
return result;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -