C++ 创建一个类来表示商店的库存有意义吗?

C++ 创建一个类来表示商店的库存有意义吗?,c++,class,oop,C++,Class,Oop,我是OOP新手,我正在尝试创建一个程序。基本上,这是一家商店,里面有产品、客户等等。然而,我正在努力回答一个问题 在OOP方面,创建一个类来表示产品的库存有意义吗?比如: class Stock { private: Product *_product; int _nrOfProducts; ... }; 我问这个问题是因为最初我认为它是产品的一部分,但后来我开始想,如果我删除一个产品会怎么样?它的所有信息都将丢失,包括我仍然需要的股票 提前谢谢 很多教程都会告诉您

我是OOP新手,我正在尝试创建一个程序。基本上,这是一家商店,里面有产品、客户等等。然而,我正在努力回答一个问题

在OOP方面,创建一个类来表示产品的库存有意义吗?比如:

class Stock
{
private:
    Product *_product;
    int _nrOfProducts;

    ...

};
我问这个问题是因为最初我认为它是产品的一部分,但后来我开始想,如果我删除一个产品会怎么样?它的所有信息都将丢失,包括我仍然需要的股票


提前谢谢

很多教程都会告诉您其他情况,但一般来说,对象更擅长在软件中对抽象进行建模,以捕获行为,而不是对物理世界中的对象进行建模。这只是数据,而对象或更好的接口是关于捕获和抽象行为的,这些行为可能因情况而异


至于缓存产品数量的决定v.s.not。典型的答案是,视情况而定。通常情况下,您不需要这样做,因为您将使用一种更复杂的集合类型,它为您提供了一个简单的计数操作。但是,由于其他原因,您可能需要将其单独存储。

另一个问题是:您是否能够删除某个产品,尤其是当您仍有该产品的库存时?您是否能够删除它,因为历史信息订单、发票可能取决于。我见过另一个商店实现,其中一个产品可能处于非活动状态,但永远不能删除。这是用什么语言编写的?给你的问题加上标签。@GolezTrol,谢谢你,你说的话在我脑子里很有道理@Sam,我没有提出,因为这是一个与OOP概念相关的问题,而不是实现。这是C++,谢谢!这很有帮助。