/*
* Copyright ©2026 Soham Pardeshi. All rights reserved.
* Permission is hereby granted to students registered for University of
* Washington CSE 333 for use solely during Summer Quarter 2026 for
* purposes of the course. No other use, copying, distribution, or
* modification is permitted without prior written consent. Copyrights
* for third-party components of this work must be honored. Instructors
* interested in reusing these course materials should contact the author.
*/
#include "Stock.h"
namespace cse333 {
void Stock::Buy(int shares, double price) {
total_shares_ += shares;
total_cost_ += shares * price;
}
double Stock::GetMarketValue() const {
return total_shares_ * current_price_;
}
double Stock::GetProfit() const {
// Note: GetMarketValue() is virtual, so in a DividendStock this call
// runs DividendStock::GetMarketValue() (slide 20).
return GetMarketValue() - total_cost_;
}
} // namespace cse333