将对象向量声明为另一个类的成员

Declaring a vector of objects as a member of another class

本文关键字:成员 另一个 对象 向量 声明      更新时间:2023-10-16

嗨,我希望声明对象的向量作为另一个类的成员,但我不太确定如何做到这一点。我在最后一个函数中是否正确地填充了向量?

这就是我要创建的类一个

的向量
class AggregatedQuoteType
{
    public:
        AggregatedQuoteType(double price, unsigned long volume);
        double get_price() const;
        unsigned long get_volume() const;
        unsigned long get_number_of_orders() const;
    private:
        double newPrice;
        unsigned long newVolume;
};

我想让向量是这个类的成员

class OrderBook
{
    public:
        OrderBook ();
        void open (double tick_size, double tolerance, std::ostream &log);
        void close ();
        unsigned long submit_order (double price, unsigned long volume);
    private:
        PriceType order_tick_size;
        PriceType order_tolerance;

};

函数

的内容如下
unsigned long OrderBook::submit_order (double price, unsigned long volume)
{
    AggregatedQuoteType newQuote(price, volume);
    unsigned long number_of_orders = newQuote.get_number_of_orders();
    std::vector<AggregatedQuoteType> newMyOrder;
    if(price > 0 && volume > 0){
        for (unsigned int i = 0; i < number_of_orders; i++){
            newMyOrder.push_back(newQuote);
        }
    }
    return 0u;
}

在没有完全理解submit_order()如何工作的情况下,我认为您需要这样的东西:

   class OrderBook
    {
        public:
            OrderBook ();
            void open (double tick_size, double tolerance, std::ostream &log);
            void close ();
            unsigned long submit_order (double price, unsigned long volume);   
        private:
            PriceType order_tick_size;
            PriceType order_tolerance;
            std::vector<AggregatedQuoteType> quotes_;  
    };

unsigned long OrderBook::submit_order (double price, unsigned long volume)
{
    AggregatedQuoteType newQuote(price, volume);
    unsigned long number_of_orders = newQuote.get_number_of_orders();
    if(price > 0 && volume > 0){
        for (unsigned int i = 0; i < number_of_orders; i++){
            quotes_.push_back(newQuote);
        }
    }
    return 0u;
}
相关文章: