14得票2回答
这是一个关于下行转换是否未定义的问题?

考虑这个例子,基类有一些数据成员,而派生类只提供了一个额外的方法:struct TestBase { int x; TestBase() : x(5) {} }; struct TestDerived : public TestBase { void myMethod...

13得票4回答
C++动态转型——多态要求和向下转型

在下面的代码中,在情况1构建obj时,我们同时构建了一个derived类对象,但其成员函数对obj是不可访问的。所以在向下转换(即情况2)时,使用obj作为源时,我们已经有了构造好的derived。为什么obj需要是多态的? 如果我的上述描述让你感到困惑,那么为什么在向上转型时obj不需要是...

13得票3回答
将具有附加功能的派生类的共享指针向下转换 - 这样做安全吗?

考虑以下概要:class Base { /* ... */ }; class Derived : public Base { public: void AdditionalFunctionality(int i){ /* ... */ } }; typedef std::share...

13得票2回答
如何从Box<Any>向下转型为特质对象类型?

pub struct WidgetWrap { // ... widget: RefCell&lt;Box&lt;Any&gt;&gt;, } 在某些情况下,我希望将Box&lt;Any&gt;转换为Box&lt;WidgetTrait&gt;。 let mut cell...

12得票3回答
如何在Python中进行向下转型

我有两个类 - 其中一个继承自另一个。我想知道如何将其转换为(或创建一个新的变量)子类。我搜索了一下,大多数情况下像这样的“向下转型”似乎是不被赞同的,并且有一些稍微有点可疑的解决方法,例如设置实例。class - 尽管这似乎不是一个好方法。 eg. http://www.gossamer-...

11得票2回答
从父对象创建子对象的最佳方法

如何在已有父级数据的情况下创建子级,哪种方法最好?是否可以在子类中添加一个带有所有父级值的方法:public class Child extends Person { public Child(Parent p) { this.setParentField1(p.getParent...

11得票4回答
在C++中,是否可能将对象向下转换为一个子类,而该子类没有定义额外的变量或虚表?

能否将一个对象向下转型为一个不定义任何额外变量或虚方法的子类? 如果我有这些类:class A { public: A (); }; class B : public A { public: void method1 () {} B (); }; 这个(1)是否可能,(2)是否符合标准安全要...

10得票4回答
C#中对象列表的向下转型

如何将对象列表向下转换,以使列表中的每个对象都被向下转换为派生类的对象? 以下是情景: 我有一个基类和继承自它的两个类,其中基类拥有一个基础项目的List。 public class BaseClass { public List&lt;BaseItem&gt; items; ...

10得票1回答
使用继承的自定义IDataReader从IDbCommand中读取数据

我创建了一个自定义类,继承了 IDataReader 接口,并成功地使用该自定义类实现了一个使用 C# 对象而不是 DataTable 的自定义 ServerWriter sqlBulkCopy。 如我所料,这证明是一个更有效的方法。 现在我正在尝试进行Read操作,但遇到了一些问题。 ...

9得票1回答
在Swift4.1中,将任何类型强制转换为Float类型总是失败的。

在之前的版本中,我可以使用 let float = dict["somekey"] as? Float 从一个 [String: Any] 字典中获取一个浮点值,但在Swift4.1中,它不再起作用。似乎在我获取它之前,dict["somekey"] 的类型已被隐式推断为Double,因此从D...