class-design

    3热度

    1回答

    我们有一个相当大的对象图,需要以很多不同的方式(模式)进行序列化和反序列化。在某些模式中,我们希望某些属性被反序列化,有些我们不需要。在未来的模式中,也许可能有更多的属性选项比是或否。现在的问题是我们如何实现这些模式。 方法A(使用反序列化构造函数和ISerializable.GetObjectData): 如果我们让使用反序列化的构造函数,我们得到反序列化的所有不同的模式有很多开关的图形连载本身

    50热度

    2回答

    我有一个接口 - 这里有一个很好的做作版本为例: public interface Particle { enum Charge { POSITIVE, NEGATIVE } Charge getCharge(); double getMass(); etc... } 有没有在如何,如果我定义的Charge枚举为静态的这个

    8热度

    14回答

    我正在实现一个类来比较目录树(在C#中)。起初,我在类的构造函数中实现了实际的比较。像这样: DirectoryComparer c = new DirectoryComparer("C:\\Dir1", "C:\\Dir2"); 但是在构造函数中做一个可能的冗长操作并不觉得“正确”。另一种方法是使构造函数保密并添加如下静态方法: DirectoryComparer c = Directory

    5热度

    2回答

    非虚拟接口习语描述虚拟方法如何是非公共定制点,公共方法是非虚拟的,以允许基类随时控制如何调用定制点。 这是一个优雅的成语,我喜欢用它,而是如何,如果派生类本身

    3热度

    7回答

    我正在设计一个处理两组数据的应用程序 - 用户和区域。数据是从第三方制作的文件中读取的。我有一个User类和一个Area类,并且数据被读入一个Users数组和一个Areas数组(或者其他适当的内存结构,这取决于我们所使用的技术)。 这两个类都有一个从文件读取的唯一ID成员,而User类包含一个Area ID数组,给出了一个用户与多个Areas关联的关系。 的要求很简单: 用户列表区的 清单指定区域

    3热度

    4回答

    我有一个很大的'经理'类,我认为这是太多了,但我不确定如何将它分成更多的逻辑单位。 一般来说类基本由以下方法: class FooBarManager { GetFooEntities(); AddFooEntity(..); UpdateFooEntity(..); SubmitFooEntity(..); GetFooTypes();

    -1热度

    6回答

    我正在使用Borland Builder C++。我有一个内存泄漏,我知道它必须是因为我创建的这个类,但我不知道如何解决它。请看我的代码 - 任何想法将不胜感激! 这里的.h文件: #ifndef HeaderH #define HeaderH #include <vcl.h> #include <string> using std::string; class Header { p

    3热度

    8回答

    我有一个'采购订单'类。它包含有关单个采购订单的信息。我有一个数据库方法的DAO类。 责任在哪里应该加载和更新采购订单的方法? 如果PurchaseOrder类具有直接使用DAO类的'.update','insert','delete'和'.load'方法,或者PurchaseOrder类不知道DAO方法并且有POController管理这些交互的类? 用户一次只能在一个PurchaseOrder

    2热度

    6回答

    将集装箱班级或其他班级作为私人或公共成员放入班级的最佳方式是什么? 要求: 1.Vector < SomeClass的>我的课 2.增加和向量的数量内需要接口

    0热度

    2回答

    目前可以向以下我: class SubClass extends SuperClass { function __construct() { parent::__construct(); } } class SuperClass { function __construct() { // this echoes "I'm SubClass a