Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 使用QML和C+实现Flux体系结构+;_C++_Qt_Architecture_Qml_Flux - Fatal编程技术网

C++ 使用QML和C+实现Flux体系结构+;

C++ 使用QML和C+实现Flux体系结构+;,c++,qt,architecture,qml,flux,C++,Qt,Architecture,Qml,Flux,在Qt/QML中的一个新项目范围内,我们目前正在寻找一种应用程序体系结构。我们正在考虑从Facebook实现Flux架构 我发现了这个很好的图书馆,它在某些方面发挥了作用: 在我们的例子中,我们希望管理C++中的存储和操作。然而,在实现C++的通量实现方面存在问题。这是要传递给Dispatcher的数据类型。C++是一种强类型语言,但调度器允许任何类型的数据传递给分派()函数。它可以像Quick Flux一样使用QVariant类型。但是我认为C++开发人员并不喜欢这种方法。p> 你有办法解决这

在Qt/QML中的一个新项目范围内,我们目前正在寻找一种应用程序体系结构。我们正在考虑从Facebook实现Flux架构

我发现了这个很好的图书馆,它在某些方面发挥了作用:

在我们的例子中,我们希望管理C++中的存储和操作。然而,在实现C++的通量实现方面存在问题。这是要传递给Dispatcher的数据类型。C++是一种强类型语言,但调度器允许任何类型的数据传递给分派()函数。它可以像Quick Flux一样使用QVariant类型。但是我认为C++开发人员并不喜欢这种方法。p> 你有办法解决这个问题吗


谢谢大家,我的答案可能已经过时了,但也许会对有同样问题的人有所帮助

您可以尝试使用类Flux应用程序模式的C++/Qt实现

请检查QML示例

导出到QML引擎的类只有两个:ActionProvider和Store。AccServices负责整个应用程序中的动作生成(QML部分和C++部分)。存储将其属性(用于属性绑定)提供给QML元素。所有存储属性在C++部分中以受控方式更改。 附言。 如果你喜欢纯C++实现,请检查
(但请确保编译器支持C++ 17 STD::YONE)

,考虑Ben Lau提出的类似于通量的应用程序架构是有意义的。 然而,对于简单的QML驱动的应用程序,同样模式的更容易实现也是可能的。特别是自从QT快速编译器引入之后,就不需要深入研究复杂的C++代码。 您可以在此处找到一个简单的QML驱动应用指南,用于确保单向数据流(如流量):

它还涵盖QT体系结构基础,何时最好使用QML与C++。