gpt4 book ai didi

java - 难以理解具有嵌套函数的 Java 实现(并用 C++ 对其进行编码)

转载 作者:太空宇宙 更新时间:2023-11-04 11:59:03 26 4
gpt4 key购买 nike

<分区>

我在看一段 Java 代码,我想看看它是如何用 C++ 实现的:

public interface IThing {
public void method1();
// more (virtual methods)
}

public interface IThingFactory {
public IThing getThing(ThingType thing);
}

public interface IFactory<T> {
public T createInstance();
}

public class A {
A(ThingType thingType, IFactory<IThing> thingFactory, ...) {
// ...
}

static A create(ThingType thingType, final IThingFactory thingFactory) {
return new A(new IFactory<IThing>() {
{
public IThing createInstance()
{
return thingFactory.getThing(thingType);
}
}, new IFactory< ... >()
{
public IAnother createInstance()
{
return anotherFactory.getAnother(anotherType);
}
});
}

// ...
}

我希望上面的代码(不完整)能说明我试图找出的内容。我的问题是这将如何在 C++ 中完成。主要是没看懂createInstance的实现在里面 A构造函数调用(在我看来仍然不完整),就像匿名函数实现一样。我看不出有什么方法可以实现 createInstance C++ 中的方法以某种方式使(抽象)类型的对象 IFactory<IThing>被定义,因为这样(虚拟)方法createInstance还是纯的或者可以用某种 lambda 函数来完成吗?

有人可以告诉我如何用 C++ 编写代码吗?感谢您提供信息!

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com