type-safety

    6热度

    3回答

    假设你有下面的代码: class A { bool _attribute1; }; // Arbitrarily using std::string, not the point of this question std::string serialize(const A&); 现在开发人员增加了一个新bool _attribute2到class A和忘记更新serializ

    1热度

    1回答

    我甚至不确定如何最好地解释这个问题,但我会看看我能做些什么。 我有一个目标,但我不知道该怎么做,或者甚至可以实现目标。 比方说,我有一个类型Sport。然后有Team<Sport>和Player<Sport>。我想这样做,任何时候我有一个团队和一个球员通过方法进行交互,他们只能这样做,如果他们有相同的<Sport>类型。 例如:Team<Sport>.AddPlayer(Player<Sport>

    0热度

    1回答

    我正在使用openJPA(有点旧版本1.2),我每次投出query.getResultList()都会收到警告。我用@SuppressWarnings("unchecked")中前行,所以我可以摆脱那个特定的警告,但是,当我需要在下面的示例返回喜欢清单,我不能这样做: // @SuppressWarnings("unchecked") I DON'T WANT TO DO THIS HERE p

    1热度

    1回答

    我正在写一个解码器从字节流解析到预定义格式的对象。我想出了下面类 trait Decoder[In] { type Out def decode(bs: In): (Out, In) } object Decoder { type ByteString = List[Byte] // for testing... // define some blo

    1热度

    2回答

    我仍然必须处理Visual Basic 6. 我刚刚发现只有在运行时强制执行对象类型的对应关系。例如参见this question。 我很震惊地发现这一点,我总是依靠对物体进行类型安全检查。 有人知道这是否存在体系结构原因(这使得它至少是一个复杂的问题)? 如果涉及到多态性,我会理解它,但是当参数的类型是一个没有被其他类实现的类时,我在编译时就没有发现类型检查有问题...?

    -1热度

    1回答

    Go是否允许函数向签名添加数组长度约束,或者长度是否仍然需要运行时检查?

    1热度

    1回答

    我需要通过引用来传递数组(因为被调用的函数会修改它,并且这些更改应该在调用站点上反映出来)。由于雨燕阵列是由价值和NSArrays过去了,通过参考,我想声明函数为: func save(_ photos: NSMutableArray<Photo>) { 但Xcode中说,我不能专注一个非泛型类型的NSMutableArray。所以,我必须做的: func save(_ photos: NSM

    4热度

    2回答

    Rust的核心特征之一是编译时强制引用的安全性,这是通过所有权机制和明确的生命周期来实现的。是否有可能实现'定制'的参考,将受益于相同? 考虑下面的例子。我们有一个代表图形的对象。假设我们可以通过引用边来遍历图,但是,这些引用是作为自定义索引实现的,而不是指向某些内存的指针。这样的索引可能只是一个数组(或三个)的偏移量,但它也可以是结合某些标志的结构等。 除了遍历图,我们也可以对其进行修改,这意味

    0热度

    1回答

    接口限制迫使我使用static_cast将MyObject*转换为void*。当这个指针回到以后的接口调用时,我必须执行另一个static_cast从void*到MyObject*,因为在这种情况下dynamic_cast不起作用(解释为here)。 但是,我想执行一个类型安全检查,以确保没有奇怪的事情发生,如果其他人更改了部分代码。如果在这种情况下可以进行任何检查,哪一个检查最好/最方便?

    7热度

    2回答

    为什么以及它如何工作? 这里是什么类型的'自动'? auto lambda = [](){ enum class Local { X=0 }; return Local::X; }; auto x = lambda(); // No error! Why and what type is auto in this case? auto y = Local::X; //