#ifndef STOCK_H_ #define STOCK_H_ #include #include // A Stock object represents purchases of shares of a stock. class Stock { public: Stock(const std::string &symbol, double share_price = 0.0); // Stock's mutator/accessor methods. void Purchase(int shares, double share_price); int shares() const { return shares_; } double share_price() const { return share_price_; } void set_share_price(double share_price); std::string symbol() const { return symbol_; } // Stock's "investment" interface. double GetCost() const; double GetMarketValue() const; double GetProfit() const; // Overload (ostream& <<) so we can print Stock. friend std::ostream &operator<<(std::ostream &out, const Stock &rhs); private: std::string symbol_; int shares_; double cost_; double share_price_; }; #endif // STOCK_H_