问题标签 [interface-class]

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.

0 投票
1 回答
40 浏览

c++ - 什么是单独的实现交互类习语,我什么时候使用它?

我偶尔会遇到我只能描述为“接口实现习语”,其中一个类被分为“接口类”和“实现类”。

这背后的哲学或推理是什么?

这种方法的示例用法是什么?这种类系统的示例是什么样的?为什么将类分成接口和实现会有用?

0 投票
1 回答
853 浏览

windows - 如何使用 SetupDiGetClassDevs() 函数在 Windows 10 上访问 GPIO、I²C、SPI 和 PWM,GUID 在这里的重要性是什么?

如何在 Windows 环境下访问 GPIO、I²C、SPI、PWM 等?

目前我有两个英特尔 NUC5i5MYBE 主板。一块板有 WindRiver Linux,另一块板有 Windows 10 Enterprise。

在 Linux 上,我在访问上述所有内容时都没有任何问题,但在 Windows 环境中存在问题。

在Windows中,我的目标是利用CreateFileWindows的功能来打开这样的界面。

但在调用此函数之前,我需要提供此函数的设备路径。为此,我的目标是使用以下函数以及数据结构来找出设备路径。

SetupDiGetClassDevs()

SetupDiEnumDeviceInterfaces()

SetupDiGetDeviceInterfaceDetail()

HDEVINFO

SP_DEVINFO_DATA

PSP_DEVICE_INTERFACE_DETAIL_DATA

但是主要的问题和未知的事情是如何将 GUID 提供给 SetupDiGetClassDevs 作为第一个参数?

SetupDiGetClassDevs 的 Windows 原型如下。

0 投票
1 回答
1691 浏览

c# - 通过接口从抽象类继承数据注释到子类?

这是我的父抽象类:

这是我的界面:

和人员类:

这是我的儿童班:

我的问题是如何通过接口将数据注释继承给子类?

我不能在没有接口的情况下直接这样做,因为它显然是多重继承。

这是一个好方法吗?

有没有其他方法?

事实上,我不想对数据注释有多个引用。有没有办法做到这一点?

0 投票
2 回答
841 浏览

java - 接口类中生成随机数方法

我有一个接口类,在这个类中我需要创建一个生成随机 int 的抽象方法。但是,当我尝试编译时出现错误,因为抽象类不能有主体。如何创建一个生成随机 int 的抽象方法?我还需要指定一个上限(我说的是 40)。

0 投票
0 回答
183 浏览

viewmodel - 如何在 ASP.net MVC 中添加可选模型类作为 viewmodel 属性

我有一个 ASP.net MVC 项目,我在其中绑定了一个具有多个类的视图模型,其中一些类是强制性的,其中一些是可选的,因为它们可用于某些类型的视图。

现在,如果不满足某些条件,我不希望包含可选类。有人建议我使用接口继承,但我不熟悉实现。

请推荐任何实施指南,因为我是 MVC 的新手。

0 投票
0 回答
569 浏览

c++ - 抽象基类中接口类的友元声明

因此,我正在考虑尝试使用 sfml 用 C++ 编写俄罗斯方块游戏,并考虑如何实现该游戏,并意识到它可能是关于继承的练习。我以为我会有:

- 一个抽象基类,将代表一个 tetromino(在俄罗斯方块中形成拼图):它称为 Tetromino_Base

- 类将从基类继承以表示特定的 tetromino,因为有不同的形状,如正方形、条形......等。

- 一个名为 Tetromino 的接口类,它是用户将操作的类型。

当我走的时候,我意识到我的类接口需要访问抽象类成员,因此我为它做了一个朋友声明,但我想:这样做是个好习惯吗?在基类中做一个朋友声明你的接口类?

这是代码的主要部分:

0 投票
1 回答
47 浏览

c# - 有没有办法让每个实现接口 Ae 的类都有一个将 Ba 实现为属性的具体类的列表?

  • 我有一个接口 (Ae),其中包含来自另一个接口 (Ba) 的对象列表 (List)。
  • 我有一个实现接口 Ae 的类。
  • 我有几个实现 Ba 接口的类。

有没有办法让每个实现接口 Ae 的类都有一个将 Ba 实现为属性的具体类的列表?

当我尝试时,AudioQuestionTextQuestion不允许我分别使用AnswerOptionImage[]AnswerOptionText[]

Visual Studio 说我需要实现接口成员 IQuestion.Answers,但这不是我想要的。

如果有人可以帮助我,我将不胜感激。谢谢。

0 投票
0 回答
49 浏览

c# - C#如何覆盖实现接口的用户控件的启用属性,该接口也具有启用属性

我有一个实现接口类 IPropertyListItemType 的 UserControl。我希望接口类要求它覆盖控件的 Enabled 属性。在我的接口类中,我有:

在我的派生类(即 UserControl)中,我目前有:

但是,当设置了用户控件的 Enabled 属性时,不会执行 UserControl 的 Enabled 属性中的代码,只执行 UserControl 的代码。我不能在接口类(修饰符'override'对此项无效)或派生类(再次,修饰符'override'对此项无效)中放置覆盖。

如何要求在派生类上实现覆盖?

0 投票
1 回答
58 浏览

c++ - “找到一个或多个多重定义的符号”。静态和友元函数

我正在尝试使用interface类,并且具有以下class结构:

IBase.h:

IQuackable.h:

野鸭鸭.h:

野鸭鸭.cpp:

我还创建了类 RedHeadDuck.h 和 .cpp,其声明和定义与 MallardDuck 相同。

最后,主类代码:

在这里我遇到了两个错误:


LNK2005“公共:静态类 IQuackable * __cdecl IQuackable::CreateInstance(void)”(?CreateInstance@IQuackable@@SAPAV1@XZ) 已在 MallardDuck.obj 中定义”。

LNK1169“找到一个或多个多重定义的符号”。


我发现,问题出在双重定义上,但它是如何解决的呢?

我已经阅读了有关 Header 保护的信息,但据我所知,在这种情况下它无济于事。人们也写了关于内联函数的文章,但我还没有意识到如何在这里使用它。

我能做些什么?

0 投票
0 回答
33 浏览

c# - C# 接口类不可见

我有一个问题,编译器似乎没有正确看到接口类。我有一个名为 Ctrl 的基类和一些派生类 、Ctrl_BUTTONCtrl_CHECKBOX。其中一些但不是全部都需要一个 Font 属性,以便我可以在运行时轻松测试该类是否支持某个Font属性。因此我有一个接口类,ICtrl_Font. 但是,我收到了设计时错误:

“AppData.Ctrl_CHECKBOX”不包含“Font”的定义,并且找不到接受“AppData.Ctrl_CHECKBOX”类型的第一个参数的扩展方法“Font”(您是否缺少 using 指令或程序集引用?)

我拥有的代码结构。

ICtrl_Font

Ctrl_CHECKBOX因此使用ICtrl_Font(为了清楚起见,我已经删除了不相关的代码):

我从该行Ctrl_CHECKBOXClone方法内部以及引用oCopy.Font = ...的代码的其他地方得到错误Ctrl_CHECKBOX.Font

我该如何解决这个问题?谢谢。