为了账号安全,请及时绑定邮箱和手机立即绑定

我能把SWIFT和C+混在一起吗?比如目标-C.mm文件

我能把SWIFT和C+混在一起吗?比如目标-C.mm文件

梦里花落0921 2019-07-09 10:17:40
我能把SWIFT和C+混在一起吗?比如目标-C.mm文件我只是将.m文件更改为.mm并使用C+。有没有办法让斯威夫特也这么做?
查看完整描述

3 回答

?
BIG阳

TA贡献1859条经验 获得超6个赞

没有。当您从.m切换到.mm时,您实际上是从Object-C切换到了另一种语言(它有许多细微的差异),称为Object-C+。因此,您并不真正使用C+;您使用的是Object-C+,它接受大多数C+作为输入(与C+接受最多(但不是所有C)作为输入的方式相同)。当我说它不是完全C+时,考虑一个C+文件,其中包含一个名为nil(这是合法的C+),然后尝试将其编译为目标-C+。

斯威夫特的关系不一样。它不是C或C+的超集,您不能直接在.swift档案。

使用SWIFT与Cocoa和Object-C还告诉我们:

不能将C+代码直接导入SWIFT。相反,为C+代码创建一个目标-C或C包装器。


查看完整回答
反对 回复 2019-07-09
  • 3 回答
  • 0 关注
  • 905 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信