问题标签 [derived]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 多态类堆栈
亲爱的 C++ 专业人士。我有问题。我有一个程序,它有 1 个抽象类 base_class 和 2 个派生类:sippeers 和 dbget。它也有2个线程。第一个线程从用户那里获取命令,第二个线程处理这些命令。两个派生类代表不同的命令。所以,我必须创建某种堆栈,我应该将用户命令从第一个线程放到第二个线程中进行处理。为了为所有命令创建一个堆栈,我必须使用多态性。首先,我尝试使用 std::list。但是有第一个问题:我不能列出抽象类。然后我尝试使用 boost::ptr_list,但出现了第二个问题:在第一个线程中创建的类在创建它们的过程结束时消失了。所以指针变得非法。问题:我应该使用什么样的实现?看起来我必须存储派生类的每个副本。但是哪里?
java - Java派生类不会自动创建实例
我有一个基本的抽象记录器类,它有一个实例变量,我希望在创建代码时由派生类自动设置。所以这里是基类:
我为一个 android 记录器创建了派生类。我希望它自动调用构造函数,但似乎这不起作用,因为我的所有日志记录函数都没有产生任何结果。
为什么这不起作用?当我在基类中调用静态函数时,我没有得到任何日志。
无论如何只要编辑 AndroidLog 类或通过在不依赖 AndroidLog 的 CLog 类中进行编辑来完成这项工作?
ruby - 在 Ruby 中调用超级方法
我正在尝试在 Ruby 中定义一些具有继承层次结构的类,但我想在派生类中使用基类中的方法之一。扭曲是我不想调用我所在的确切方法,我想调用不同的方法。以下不起作用,但这是我想做的(基本上)。
javascript - JSON:如何处理从密钥派生的属性?
我的应用程序中有一个这样的 JSON 对象:
属性file
和url
总是可以从各自的键派生,所以我目前在我的代码中这样定义上面的对象:
但是,由于file
和url
是派生属性,将它们添加到对象中似乎是多余的。但是由于我为每个页面传递值,而不是键,所以我也必须将它添加到对象中,这也是多余的。像这样:
现在我有三种不同的方法,我不太喜欢其中任何一种。我认为这应该是一个相当普遍的问题,那么您将如何解决这个问题?如果要多次使用派生属性怎么办?
inheritance - 'base' 值只能用于直接调用被覆盖成员的基本实现
为什么我不能调用这里的base
实现f
:
调用base.f
引发此编译器错误:
如果我更改f
为采用单个参数,那么它会编译。大概这与咖喱参数与元组参数有关,但上面的代码对我来说看起来不错。
c# - 自动映射器和类层次结构
鉴于以下来源:
和目的地:
而这个映射:
但是,这会产生一个映射错误,指出 MyString 未映射到 DestDerived。是什么赋予了?我真的需要在所有派生类型中重复基类属性的映射吗(我的实际代码中确实有多个子类)。
编辑:
确切的例外是无法映射 DestDerived 上的以下 1 个属性:MyString。添加自定义映射表达式,忽略或重命名 DestDerived 上的属性。
c++ - 派生类不能访问继承的函数?
我正在创建一个涉及继承的非常简单的程序。我将一个函数放入父类的“受保护”区域,现在我无法从子类访问。这是我的代码:
后来,我得出:
之后,我派生了另一个类,我在其中实际尝试使用 getPrice() 函数。
在新类的头文件中:
这条线不会给我一个错误。
但在文件game.cpp中:
“printedGame”一词返回“错误:对象具有与成员函数不兼容的类型限定符”
当我尝试直接进行时(我之前尝试过,因此:)
我收到了那个错误,还有一个通知我 getPrice() 函数不可访问。
这里有什么帮助吗?谢谢!!
c++ - 从模板派生
我坚持以下几点,可以使用一些帮助:
看起来派生类没有得到重载的运算符
c - C 和派生数据类型?
我知道C中的基本数据类型 - char、int、float 等。但是C语言中的派生数据类型到底是什么?
c++ - 调用派生类的模板函数
我在 C++ 中遇到问题,在调用派生类的函数时有一个指向基类的指针。
编辑:一些答案将我推荐给CRTP
但我的观点是我需要有一个指向“Base*”类而不是“Base*”的指针,因为我不知道当前正在处理的类型(当前实例是从某种工厂创建的)。
课程:
用法:
我不能使 func 虚拟,因为该语言不支持虚拟模板功能。
仅当只有类具有模板参数时才允许,但如果其中的函数具有模板参数则不允许。
我已经看到在 Boost.Serialization 中解决了类似的问题,但无法理解解决方案。
谢谢,
科比·梅尔