![]() |
1
0
您可以通过将数据生产者封装在worker中来解决此问题:
调用引擎如下所示:
|
![]() |
2
0
实际上,奥列格的解决方案并不是那么糟糕,但是可以改进。 考虑到您希望对IPPublicWorker接口施加限制,我假设您希望控制IPPublicWorker的实现,并为用户提供特定的API来获取这些接口。如果是这样,您可以从IPPublicWorker派生IIInternalPublicWorker,并在引擎的构造函数中,验证IPPublicWorker确实是预期类型:
|
![]() |
3
0
更新
这允许您分离接口的外部和内部用户的数据。 |
![]() |
4
0
编辑
|
![]() |
5
-2
为什么不将GetInternalProducer()定义为
您必须检查空指针,但不需要再公开IInternalDataProducer。
|
|
simply lemon · python上链表的添加方法 10 月前 |
![]() |
HiroIshida · C++多重继承:实现具有重叠虚函数的接口[重复] 10 月前 |
|
Anonymous · 为什么在这个例子中self和类名的用法不同? 11 月前 |
![]() |
P N Singh · 在CPP Oops中调用对象而不创建它 11 月前 |
![]() |
Muthuraj · 如何创建一个通用工厂来创建某种类型的实例[重复] 1 年前 |
![]() |
Andy Votava · 从父类定义调用学生方法 1 年前 |