2019独角兽企业重金招聘Python工程师标准>>>

#import <UIKit/UIKit.h>
extern NSString *const EOCErrorDomain;typedef NS_ENUM(NSUInteger,EOCError){EOCErrorUnknown = -1,EOCErrorGeneralFault = 100,EOCErrorBadInput = 300,
};
@interface ViewController : UIViewController@end#import "ViewController.h"
/***  1.ARC在默认情况下不是“异常安全的”*  2.OC语言只在极其罕见的情况下抛出异常,异常抛出之后,无需考虑恢复问题,而且应用程序此时也应该退出。*  3.在出现“非致命错误”时,令方法返回nil/0,或者用NSError以表明其中有错误发生。*  4.错误范围应该定义成NSString的全局常量,而错误码则定义成枚举为佳*/
NSString *const EOCErrorDomain = @"EOCErrorDomain";
@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {[super viewDidLoad];// Do any additional setup after loading the view, typically from a nib.NSError *error = nil;
// error domain(错误范围,其类型为字符串)
// error code(错误码,其类型为整数)
// error info (用户信息,其类型为字典)id object;BOOL ret = [object dosomething:&error];if (error){//There was an error}
}
-(BOOL)dosomething:(NSError**)error
{return YES;
}
- (void)didReceiveMemoryWarning {[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated.
}@end

转载于:https://my.oschina.net/u/2319073/blog/620828

OC高效率52之理解OC错误模型相关推荐

  1. OC高效率52之理解消息转发机制

    2019独角兽企业重金招聘Python工程师标准>>> #pragma mark 演示动态方法解析 #import <Foundation/Foundation.h>@i ...

  2. OC高效率52之提供“全能初始化”方法

    2019独角兽企业重金招聘Python工程师标准>>> #import <Foundation/Foundation.h>@interface EOCRectangle ...

  3. OC高效率52之“方法调配技术”调试“黑盒方法”

    2019独角兽企业重金招聘Python工程师标准>>> #import "ViewController.h" #import <objc/runtime.h ...

  4. OC WKWebView的JS与OC交互、Cookie管理

    完全抄录:iOS中UIWebView与WKWebView.JavaScript与OC交互.Cookie管理看我就够(中) ####WKWebView 是Apple于iOS 8.0推出的WebKit中的 ...

  5. OC 知识:彻底理解 iOS 内存管理(MRC、ARC)

    1. 什么是内存管理 程序在运行的过程中通常通过以下行为,来增加程序的的内存占用 创建一个OC对象 定义一个变量 调用一个函数或者方法 而一个移动设备的内存是有限的,每个软件所能占用的内存也是有限的 ...

  6. OC get set 方法理解 get set方法不能同时重写

    最近在了解Xcode 对 @property 所做的事情 我们都知道用@property 声明的属性 Xcode 会帮我们生成get set 方法,有时我们根据实际需要会重写get 或者set 方法. ...

  7. OC中的^怎么理解?

    在OC中^操作符是用来声明一个block变量,^也是标示着一段block文字的开始.block的实体包含在{}中. 比如: NSURL *url = [NSURL URLWithString:aler ...

  8. OC中block的理解

    ### Block学习 ##Block内存模型 #Class指针 isa: 1.在Objective-C中,任何类的定义都是对象.类和类的实例(对象)没有任何本质上的区别.任何对象都有isa指针. 2 ...

  9. ios传值给js_IOS中plus.ios.implements实现OC方法后,在OC中回调传值后JS端无法正确获取...

    代码很简单, NJS端: var MasSso = plus.ios.importClass("MasSso"); var masSso = new MasSso(); var h ...

最新文章

  1. SQL系列ROLLUP关键字
  2. Socket 通信原理(Android客户端和服务器以TCPUDP方式互通)
  3. 使用PHP CURL 模拟HTTP实现在线请求工具-toolfk程序员工具网
  4. OpenCV F变换理论F-transform theory
  5. mysql5.7 的 user表的密码字段从 password 变成了 authentication_string
  6. 足不出户带你体验专业实验室,技术实现不在话下
  7. 使用std::function 把类成员函数指针转换为普通函数指针
  8. .NET4进行COM互操作--导出数据到Excel
  9. bzoj 3631: [JLOI2014]松鼠的新家(LCA+树上差分)
  10. Web前端学习-第一课JavaScript篇
  11. 图片压缩工具(网页优化)
  12. win7原版系统安装及基本设置
  13. ML-Agents命令及配置大全
  14. python中sys.stdout和sys.stderr
  15. 18.移动点餐端搭建----点餐系统移动端
  16. 新来的妹纸 rm -rf 把公司整个数据库删没了,整个项目组慌了~
  17. c语言函数变量的作用域与生存期
  18. linux实现动态域名解析DDNS
  19. 根据出生日期计算当前年龄
  20. 用C语言写一个单词本(兼具检索单词和向TXT中写入陌生单词的功能)

热门文章

  1. android中获取mac地址8.0,关于Android8.0以下手机获取蓝牙Mac地址的问题和扫描周围的手机蓝牙问题 下篇...
  2. shiro密码正确也会匹配错误_Shiro学习之——Shiro与Web集成
  3. 复制不用说yes的方法
  4. 统计gitlab代码行脚本_一点也不复杂, GitLab Webhook 自动部署代码
  5. python mkl freebsd_freebsd下之简单安装python
  6. combobox 取消记忆功能_南京长江大桥桥头堡空间改造设计,记忆与纪念的共鸣
  7. 【分享】老调重弹,既懂技术又懂管理的人才发展中的实际问题
  8. python 如何调用远程接口
  9. MyBatis中针对if-test的参数为指定值的xml写法
  10. 使用Dockerfile定制镜像-定制Tomcat为例