使用嵌套的公共 C++ 类和枚举的优缺点是什么?例如,假设您有一个名为 的类printer
,并且该类还存储输出托盘上的信息,您可以:
class printer
{
public:
std::string name_;
enum TYPE
{
TYPE_LOCAL,
TYPE_NETWORK,
};
class output_tray
{
...
};
...
};
printer prn;
printer::TYPE type;
printer::output_tray tray;
或者:
class printer
{
public:
std::string name_;
...
};
enum PRINTER_TYPE
{
PRINTER_TYPE_LOCAL,
PRINTER_TYPE_NETWORK,
};
class output_tray
{
...
};
printer prn;
PRINTER_TYPE type;
output_tray tray;
我可以看到嵌套私有枚举/类的好处,但是当涉及到公共枚举/类时,办公室是分开的——它似乎更像是一种风格选择。
那么,你更喜欢哪个,为什么?