编译器支持

谷歌和苹果应用Clang由于他们的C++前端。为了使他们的执行代码Windows上,微软不得不Visual C++C2和Clang结合起来。

(Clang是一个C语言、C++、Objective-C、Objective-C++语言的轻量级编译器,源码公布于BSD协议下。译者注)

IDE支持

在Visual Studio中Objective-C具有语法高亮、代码完毕和调试支持等功能。C++和C#文件能够包括在同一个项目中,同意程序来直接跨区域进行调用。

编译器将处理全部的细节所以开发人员仅仅是看到正常的函数调用的封装处理。

大多数Objective-C项目都作为XCode项目而開始,所以Visual Studio提供了导入该项目类型的能力。VS和XCode项目文件能够存在于同一个项目中,这样你就能够在两种IDE对同一个项目进行开发。

混合模式项目

Windows提供了新的API给Objective-C,比如动态磁贴。

为了确保代码能够继续在这两个平台之间共享,微软提供执行时检查来查看Windows API能否够给非常好的调用。

或者,你能够使用预处理器指令从共享的代码中将特定平台的代码隔离出来。

执行时行为

默认情况下Windows下的Objective-C执行库检測到应用程序的原始平台来确定它的行为。

比如。假设你提供一个iPhone应用程序然后它将默认在一个狭窄的窗体中执行。而iPad应用程序执行在一个正常的窗体中。

全部这些行为可由应用程序在须要时进行重写。

iOS API 兼容性

Windows 10支持iOS API的子集。

它不会跟踪特定版本号的iOS。但相反在标准中查看哪些APIs常常被使用。对于第一个版本号。微软主要关注的APIs包括例如以下:

游戏:OpenGL。OpenAL以及传感器
UI:UIKit,CooreAnimation,CoreGraphics,CoreText,Touch
Objective-C:ARC,Blocks。Foundation

一些类如共享、通知和StoreKit的特性。开发人员须要在保留iOS APIs以及使用Windows的替代方案之间进行选择。假设你选择保留iOS APIs,Windows将会提供一个兼容性层,这种APIs将能够開始运作。

而选择Windows的替代方案的优点在于你能够使用Windows的高级功能。

Swift

微软对于Swift的官方立场是“此时不做评论”。大概也就是说他们想要支持Swift可是眼下太忙了,还要继续为Objective-C做准备,而秋天或许会宣布关于Swift的消息。



感谢您的訪问,希望对您有所帮助。 欢迎大家关注、收藏以及评论。


为使本文得到斧正和提问。转载请注明出处:
http://blog.csdn.net/nomasp


使用Visual Studio将Objective-C编译C++相关推荐

  1. Win10 下Visual Studio 2017源码编译Paddle

    Win10 下Visual Studio 2017源码编译Paddle 1.准备工作 Visual Studio 2017 Python 3.8.10 CMake 3.22.0-rc2 熟悉官方文档: ...

  2. Visual Studio 2008 RTM 已经编译完毕,内部人员已可使用

    新闻来源:Hust Byhh BBS 据微软上海人士称,下月将正式发布的Visual Studio 2008 RTM已经编译完成,当前的RTM版本为 9.0.21016.00, 生成日期是 17/10 ...

  3. Windows10 + Visual Studio 2017 + CMake +OpenCV编译、开发环境配置及测试

    由于最近需要使用OpenCV,本人需要在自己的PC上使用OpenCV,因此最近一直在研究如何使用Visual Studio编译OpenCV源代码并搭建开发环境,折腾了很长时间,查阅了很多相关资料,终于 ...

  4. visual studio 2017 和qt 编译 bitcon源代码

    visual studio 2017 qt 5.7.1(别人已经编译好的静态库,为什么用别人编译好的,自己编译老是编译错误,?) 1. 安装vcpkg.将应用程序内的lib编译成功.设置编译选项为MT ...

  5. mingw w64 v8.0.0_使用Visual Studio Code和MinGW编译运行C++代码

    官网:<Using Mingw in Visual Studio Code>,本文稍做了简化,喜英文版可直接移步. 工具准备 首先应该准备如下工具: 安装对应版本的Visual Studi ...

  6. windows7+visual studio 2013+CUDA7.5 编译caffe+配置matcaffe+配置pycaffe

    经过朋友指导,终于成功在windows7上成功编译了caffe,这里将编译过程记录 安装文件准备 1 visual studio 2013安装包下载 2 CUDA75 optional 3 windo ...

  7. sass webpack_如何在Visual Studio和Webpack中编译Sass文件

    sass webpack Sass is a very popular CSS pre-processor. The intent of this tutorial is to show you ho ...

  8. Visual Studio Code(VSCode) 编辑/编译/调试 C++ 代码

    前言 最近想要切换编辑工具,之前工作中使用过 Source Insight,Eclipse,CLion 来写 C++ 代码.目前来说 Source Insight 已经非常古老,只有编写代码还说得过去 ...

  9. 在Win 11下使用Visual Studio 2019和cygwin编译JBR(Java SDK 17)源码

    很多文章介绍了JDK 8和JDK11源码在Linux编译,很少有人介绍了JDK 17在windows的编译过程,所以写了这篇文章,为什么选用JBR 17版本,因为JBR17 版本集成了HotSwapA ...

  10. Visual Studio 2017环境cmake编译opencv 4.3.0+opencv_contrib 4.3.0(保证成功,保姆级教学,呕心沥血)

    前言:为什么要装opencv_contrib opencv3的版本之后只包含基本内容,众多著名的检测算子(如SIFT.SURF和ORB等内容)因为版权问题转移到了一个名为xfeature2d的第三方库 ...

最新文章

  1. Python创建目录文件夹
  2. 《.NET程序员面试秘笈》----面试题8 方法的重载和override有什么区别
  3. putty和Xming server 结合完美在windows下显示linux GUI程序
  4. jQuery 事件方法大全
  5. 全球及中国牵引螺丝行业规模现状与“十四五”发展前景预测报告2021-2027年版
  6. Oracle的锁表与解锁
  7. Docker 命令总结
  8. 高交会|华创芯光邀您一起畅游可见光通信的世界
  9. 记录|斐讯K2拆机使用ttl刷入breed并刷入新固件
  10. Docker 的LNMP + Wordpress搭建
  11. Python零基础速成班-第3讲-Python基础(中),list数组、tuple元组、dict字典、set集合
  12. 揭开LiteOS的神秘面纱
  13. 2021年少儿编程未来趋势分析
  14. jQuery - 基于serializeArray的serializeObject
  15. 企业推广常用的网络推广方法有哪些?
  16. JAVA里List集合中的对象根据对象的某个属性值降序或者升序排序java8
  17. 服务器维护 志愿填报时间顺延,因系统维护 西藏高考志愿填报截止时间顺延两日...
  18. 写给20岁左右的读者朋友
  19. react中使用orgchart组织结构插件
  20. vlookup匹配的文字显示0_「Excel高效办公」vlookup函数的几种常用使用场景

热门文章

  1. Flash ActionScript (23)三天学透as3.0之第二天
  2. linux c/c++ GDB教程详解
  3. Hotpatch潜在的安全风险
  4. Linux学习命令汇总三——Linux用户组管理,文件权限管理,文本搜索命令grep及正则表达式...
  5. Android Studio打开项目所有Java文件的import显示红色
  6. 原生Android也能做Web开发了
  7. Share Point 2013使用Windows PowerShell 获取,删除UserProFile
  8. 远程桌面的分辨率最大不会超过本机真实物理机的分辨率
  9. 谈谈Linux内核驱动的coding style
  10. Atitit.jpg png格式差别以及解决jpg图片不显示的问题