问题标签 [delegation]

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 投票
7 回答
1269 浏览

c++ - C++/Java 继承与委托与等

我正在创建一个具有许多不同选项的类库以进行可能的自定义。例如,您可以设计您的类以便它可以执行 FeatureX(),或者您可以设计您的类以便它可以执行 FeatureY()。

在正常情况下,您只需创建一个接口 IFeatureX 和一个名为 FeatureX 的纯虚方法,以及另一个接口 IFeatureY 和一个称为 FeatureY 的纯虚方法。如果一个类同时具有 FeatureX 和 FeatureY,它可以从两者继承,没问题。

我的问题是,如果一个函数/方法需要一个可以同时执行 FeatureX() 和 FeatureY() 的对象怎么办?我如何表达一个类型,最好用 C++,但 Java 的答案也可以帮助确保 FeatureX 和 FeatureY 都可用?

我是否要创建另一个从 IFeatureX 和 IFeatureY 继承的接口 IFeatureXY?好的...如果只有两个功能,我可以摆脱这个。但是如果有说... 10 个功能,可能的接口数量就会变得庞大。

有没有一种简单的方法可以做到这一点?我尝试使用 C++ 模板和委托来解决问题,但并没有走得太远。我希望有一个简单的解决方案,并且可能有一个我只是忽略了。

我感谢你们的任何帮助和建议。

谢谢。

0 投票
1 回答
937 浏览

javascript - 表上的更改事件在 IE 中失败

我正在使用 jQuery 来捕获表上的更改事件。该表有很多行,每行有几个输入框和一个复选框。为此,我正在使用事件委托。我正在捕获 tbody 级别的任何更改。这是下面的代码

此代码在 Firefox 中运行良好,但更改事件未在 IE 中捕获。我想使用事件委托来处理这个解决方案,而不是将每个事件附加到每个输入元素上。我还想避免使用 jQuery 来定位每个元素,因为表行是动态构建的,并且取消绑定/绑定事件似乎有点混乱(只是我的看法)

关于如何让它发挥作用的任何想法?

0 投票
6 回答
29369 浏览

oop - 何时使用委托而不是继承?

有人可以解释一下我什么时候想使用委托而不是继承?

0 投票
2 回答
2732 浏览

openid - 我可以通过标准 Google 帐户使用 OpenID 委托吗?

我目前正在使用 ClaimID 并在我的网站上有以下数据以允许委派:

Google 是否有等效的 URL?如果没有,是否有提及未来的支持?

在有人将此标记为重复之前,我知道这个现有问题:您如何将您的 OpenId 委托给 Google Apps。但是,该问题专门针对 Google Apps,我只想知道是否可以通过普通的@gmail.com 帐户使用 OpenID 委托?

0 投票
6 回答
2147 浏览

c++ - 您使用什么模式来解耦 C++ 中的接口和实现?

大型 C++ 项目中的一个问题可能是构建时间。在你的依赖树中有一些你需要处理的类,但通常你会避免这样做,因为每次构建都需要很长时间。您不一定要更改其公共接口,但也许您想更改其私有成员(添加缓存变量,提取私有方法,...)。您面临的问题是,在 C++ 中,甚至私有成员都在公共头文件中声明,因此您的构建系统需要重新编译所有内容。

在这种情况下你会怎么做?

我已经勾勒出两种我知道的解决方案,但它们都有自己的缺点,也许还有一个更好的我还没有想到的解决方案。

0 投票
2 回答
5097 浏览

c# - LogonUser 和委派

我正在使用 LogonUser win32 api:

但是,在此之后调用 WCF 服务时,我无法使用模拟身份。我认为这是因为 impersonatedUser.ImpersonationLevel 等于 Impersonation。

这是原因吗?ImpersonationLevel.Identification 级别是我需要的吗?怎么达到这样的水平?

0 投票
1 回答
1736 浏览

python - 在 Python 中模拟成员资格测试:将 __contains__ 正确委派给包含对象

我已经习惯了 Python 允许一些巧妙的技巧将功能委托给其他对象。一个例子是委托给包含的对象。

但是,当我想委托 __contains __ 时,我没有运气:

我得到:

我做错了什么?当我调用 a.__contains __(1) 时,一切都很顺利。我什至尝试在 A 中定义一个 __iter __ 方法,以使 A 看起来更像一个可迭代的,但它没有帮助。我在这里错过了什么?

0 投票
3 回答
946 浏览

iphone - 如何正确实施委托?

当发生特殊事情时,我正在尝试为一个应该称之为委托(如果有的话)的类实现委托。

从维基百科我有这个代码示例:

如果我自己尝试此操作,我会收到一条警告,指出我在委托上调用的方法未找到。当然不是,因为委托只是被 id 引用。它可以是任何东西。当然在运行时这会很好,因为我检查它是否响应选择器。但我不想要 Xcode 中的警告。有更好的模式吗?

0 投票
4 回答
8813 浏览

design-patterns - 策略模式和委托模式的区别

策略模式和委托模式(不是委托)有什么区别?

0 投票
3 回答
1313 浏览

c# - 通过委托生成接口实现的工具?

我经常需要通过将实现委托给我的类的成员来实现接口。这个任务相当乏味,因为即使 Visual Studio 为接口方法生成存根,我仍然必须编写代码来委派实现。它不需要太多思考,所以它可能会被代码生成工具自动化......

我可能不是第一个想到这个的人,所以肯定已经有这样的工具了,但我在谷歌上找不到任何东西......有什么想法吗?


编辑: ReSharper似乎可以做到,但它相当昂贵......是否有具有相同功能的免费替代品?