The*_*ght 15 c++ macos qt swift
我们可以很容易地在Qt中使用Objective-C和C++.
观看了Apple的许多WWDC 2015演讲,我预计Swift将取代OS-X(和iOS)开发的Objective-C; 所有的演示都使用了Swift.
考虑到你可以一起使用Objective-C和Swift,使用桥接头,是否可以在Qt项目中编译Swift代码并使用C++访问Swifts的第一类对象(Classes,Structs,Enums等)?
如果有可能...
从Qt调用Objective-C函数需要将代码包装在C函数中,并从Qt调用C头.
从Objective-C调用Swift需要一个桥接头来表示哪些Swift文件可用.然后在XCode项目中引用此标头; 我们可以在Qt .pro中做到这一点,如果是这样,怎么样?
假设我们可以指定桥接头,我们仍然只能从Objective-C文件调用Swift,但是可以直接从Qt中调用Swift,在C++中?
从 Qt 调用 Objective-C 函数需要将代码包装在 C 函数中,并带有要从 Qt 调用的 C 标头。
这并不完全正确,Obj-C 和 Obj-C++ 函数和方法可以直接从 Obj-C++ 调用。鉴于 Obj-C++(大部分)是 C++,Qt 和 Obj-C/C++ 之间的接口是微不足道的。您可以简单地将 Qt 实现文件命名为 .mm 而不是 .cpp!您可以直接从 Obj-C 方法实现调用 Qt 或标准 C++,编译为 Obj-C++ 文件(.mm,而不是 .m),反之亦然。
有一种方法可以引导 swift 编译器为您生成桥接标头,并且可以将其作为自定义编译器或自定义目标集成到 .pro 文件中。
| 归档时间: |
|
| 查看次数: |
6214 次 |
| 最近记录: |