本人对Xcode中的release模式和debug模式很是疑惑,于是今天对其进行的调研,写下笔记以备查阅
Debug是调试版本,包含调试信息,并且不做任何优化,便于程序猿进行调试.
Release 是发布版本,它往往是进行各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好的使用.
在上传AppStore的时候要将Debug改为Releas版本
修改步骤:
1.在run和stop按钮的右边有一个工程名,点击工程名
2.选择Edit Scheme
3.左侧选择Run "工程名" 右侧选择Info页,在Build Configuration选择release还是debug.
提到release 和 debug 又提到另一个点
NSLog并不是简单的输出,它会做很多工作,如果程序中存在大量的log那么它会占用很多资源, 那么优化NSLog就是必要的了. 通过学习了解到可以在debug模式下显示log,在release模式下自动屏蔽log输出代码.
方法如下:在工程的Prefix.pch中添加如下代码

#ifndef __OPTIMIZE__

#define NSLog(...) NSLog(__VA_ARGS__)

#else

#define NSLog(...){}

#endif

编译运行,当选择release模式时,程序不会有打印,当选择debug时程序会正常打印

转载于:https://www.cnblogs.com/NatureZhang/p/3801191.html

Xcode中release和debug模式相关推荐

  1. Android studio中如何利用Debug模式来调试程序

    众所周知,程序猿肯定会遇到的问题就是Bug,即在开发过程中令程序无法运行,或达不到正确需求的程序漏洞或缺陷.    但是Studio是智能的,我们可以利用Debug模式来调试程序,以解决问题.     ...

  2. ARC在Release与Debug模式中内存释放的坑

    以一个方法起头: - (void)createCat {NSObject *cat = nil;if (!cat) {cat = [[NSObject alloc] init];//1}//2 } 复 ...

  3. cmake Debug模式和Release模式

    在cmake中要编译debug模式的话,在CMakeLists.txt中添加如下两行 SET(CMAKE_CXX_FLAGS_DEBUG "$ENV{CXXFLAGS} -O0 -Wall ...

  4. log4net在winform中release后不工作的原因

    在一个短信项目中,其中一个子系统用winform c++/cli开发,用到了log4net,但是出现了一个奇怪的现象,就是当在ide(vs2010)中调试时debug模式,或realease模式下,l ...

  5. webstorm的debug模式

    F7 在 Debug 模式下,进入下一步,如果当前行断点是一个方法,则进入当前方法体内, 如果该方法体还有方法,则不会进入该内嵌的方法中 * F8 在 Debug 模式下,进入下一步,如果当前行断点是 ...

  6. MAPLAP开发环境中release模式和debug模式烧写.hex文件的不同之处

    昨天看了齐工的报告才知道release模式和debug模式烧写.hex文件的不同. 三:问题分析 1. PIC系列的仿真器和集成开发环境的情况: Ø Release模式和Debug模式是有区别的:Re ...

  7. DEBUG模式和RELEASE模式切换

    应用程序本身的状态模式:debug调试模式(强调方便)/release发布模式(强调性能) 符号DEBUG/_DEBUG表示Xcode工具的状态内容值(Xcode工具状态呈现值/符号DEBUG/_DE ...

  8. VS.Net中程序集的Debug版本和Release版本的区别

    作者:未知   请作者速与本人联系 前几天看到豆腐的文章介绍如何知道程序集是Debug版还是Release版,之前只知道某些软件从功能上有企业版.标准版之分,却从不知道.Net程序集还有Debug和R ...

  9. Opencv学习笔记——release和debug两个模式的运行问题

     版权声明:本文为博主原创文章,未经博主允许不得转载.博客不用于商业活动,博主对博客的使用,拥有最终解释权  本文为原创作品,未经本人同意,禁止转载,禁止用于商业用途!本人对博客使用拥有最终解释权 ...

最新文章

  1. 用 .NET Memory Profiler 跟踪.net 应用内存使用情况--基本应用篇
  2. Anaconda 安装 opencv3(Win10)
  3. Linux System Programming --Chapter Four
  4. AlphaImageLoader用法
  5. 前众信旅游B端产品经理吴彪:如何搭建B端电商产品及用户体系
  6. 《Head First Servlets JSP(中文版)》书摘
  7. mybatis配置文件解析错误解决方法
  8. TCP/IP协议族-----10、搬家IP
  9. 非线性回归模型(part3)--K近邻
  10. std::make_unique和 std::make_shared区别
  11. iPhone成交额2秒破亿!京东11.11晚8点战报:5分钟家电成交额破20亿
  12. UVA-127 Accordian Patience(模拟)
  13. php采集规则编写,织梦dedecms图片采集规则的编写方法
  14. Linux 档案属性与目录配置
  15. 企业数据总线(ESB)和注册服务管理(dubbo)的区别{{1033}}
  16. 2021最新文本综述:从浅层到深度学习(附PDF下载)
  17. 2021-08-07:与数组中元素的最大异或值。给你一个由非负整数组成的数组 nums 。另有一个查询数组 queries ,其中 queries[i] = [xi, mi] 。第 i 个查询的答案是
  18. 在eclipse启动tomcat运行一个web程序,报java.lang.OutOfMemoryError: PermGen space
  19. 随机梯度下降法步长的选择
  20. phpStrom2016.3激活教程

热门文章

  1. 深入剖析Redis系列(四) - Redis数据结构与全局命令概述
  2. 二叉树的蛇形遍历 leetcode 103
  3. 域用户权限|安装软件
  4. jstl 处理Date 时间
  5. getContentResolver().query()方法selection参数使用详解(转)
  6. SAP BW系统日常维护日常工作及常见的Infopackage错误
  7. 从笑话中看到产品创意
  8. MongoDB 设置权限认证
  9. css_oneday
  10. dispatchTouchEvent onInterceptTouchEvent onTouchEvent区分