Object-C中需要注意的小细节

时间:2022-09-09 14:12:24

--------------------------------------------关于命名-------------------------------------------------

1.定义的变量名有单词组成,第一个单词首字母要小写,习惯上加一个下划线,表示是成员变量。

变量声告诉我们这将会可以放入什么样的数据。变量的名字,可以可以随便起,当然能有一定的意义最好,不过有些约定,变量名字必须不包含任何空格或者特殊字符,他们只能是字符,数字和下划线。他们也不能以数字开头。

2.product name:项目名称是不能用中文的;类名首字母大写,对象名首字母小写。

3.驼峰命名法:

a.名称首字母用大写;

b.动名词,动词首字母用小写,名词用大写。
 
--------------------------------------------关于方法------------------------------------------------- 
4.- (void)setHeight:(int)newHeigt;
OC方法中,一个冒号:对应一个参数。上面的代码age的set方法接收一个int类型的参数,参数名为newHeigt,所以(int)newHeigt
前面有一个冒号:,要记住:一个冒号:对应一个参数,而且冒号:也是方法名的一部分。上面代码set方法的方法名是setHeight:,而不是setHeight。
 - (void)setHeight:(int)newHeigt andWeight:(int)newWQeight;

这个方法的方法名是setHeight:andWeight: 当然andWeight是可以省略的,只是为了方便阅读。

--------------------------------------------关于细节-------------------------------------------------

5.如下面截图,在第一个里面如果添加元素时写成了@[@(i)],在输出结果时会多了一个括号;在第二个数组里面,如果不遍历输出数组里面的值的话,会出现乱码,因为不能直接输出中文,必须通过遍历数组才能正确输出。

第一个数组:

 Object-C中需要注意的小细节Object-C中需要注意的小细节

第二个数组:

Object-C中需要注意的小细节Object-C中需要注意的小细节

--------------------------------------------关于拷贝-------------------------------------------------

6.对于深浅拷贝容易忽视的地方

// 如果想让一个不可变对象 变成可变对象 可以使用mutableCopy

NSArray *arr = @[@"1",@"2",@"3"];

NSMutableArray *arrrr = [arr mutableCopy];

[arrrr removeObject:@"2"];

NSLog(@"%@",arrrr);

可以输出结果

//        一个可变的对象 进行copy 它将变成一个不可变的对象

NSMutableString *string = [NSMutableString stringWithString:@"dgadgg"];

NSMutableString *sr = [string copy];

[sr appendString:@"dgasdg"];

NSLog(@"%@",sr);

这样就出现了错误哦!!!!!

--------------------------------------------关于联想之快捷-------------------------------------------------

###利用xcode的自动联想:

1.自动出现父类的初始化方法:

只需要输入in 然后回车就可以了

Object-C中需要注意的小细节

2.单例的GCD的写法:

在方法的括号内输入dis可以出现

Object-C中需要注意的小细节

3.kvo里面自动调用的那个方法

输入-(void)然后输入o就可以出现了

Object-C中需要注意的小细节

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

在定义了一个对象的全局变量时,在使用它时要考虑呢是否初始化,这点很容易忘记

在使用swich语句时,如果程序中需要多个语句的同时出现了,不要忘了加一个{};不然会抱错,它只能识别一个 ‘;’。

将不断更新。。。。。。。。。。。。。

Object-C中需要注意的小细节的更多相关文章

  1. java中需要注意的小细节

    很早以前就打算写博客,但是总是因为不知道写什么,或是觉得博客里其他人已经把我要写的整理很好了而迟迟没有动笔,现在决定把自己平时的记录的一些笔记拿出来,希望大神们可以批评指导,并且希望能够帮助一些刚刚入 ...

  2. ArrayList中的一些小细节@JDK8

    ArrayList中的一些小细节@JDK8 protected transient int modCount = 0; 该变量用于记录ArrayList的版本号,不可被序列化,每次对ArrayList ...

  3. 浅析C#组件编程中的一些小细节

    控件与组件的区别(Control&Component的区别) 作者:作者不详  发布日期:2011-06-30 12:08:41 控件与组件的区别(Control&Component的 ...

  4. 手摸手教你如何在 Python 编码中做到小细节大优化

    手摸手教你如何在 Python 编码中做到小细节大优化 在列表里计数 """ 在列表里计数,使用 Python 原生函数计数要快很多,所以尽量使用原生函数来计算. &qu ...

  5. ASP.NET MVC 自定义路由中几个需要注意的小细节

    本文主要记录在ASP.NET MVC自定义路由时,一个需要注意的参数设置小细节. 举例来说,就是在访问 http://localhost/Home/About/arg1/arg2/arg3 这样的自定 ...

  6. C++在使用Qt中SLOT宏须要注意的一个小细节

    大家都知道C++虚函数的机制,对于基类定义为虚函数的地方,子类假设覆写,在基类指针或者引用来指向子类的时候会实现动态绑定. 但假设指针去调用非虚函数,这个时候会调用C++的静态绑定,去推断当前的指针是 ...

  7. C++在使用Qt中SLOT宏需要注意的一个小细节

    大家都知道C++虚函数的机制,对于基类定义为虚函数的地方,子类如果覆写,在基类指针或者引用来指向子类的时候会实现动态绑定. 但如果指针去调用非虚函数,这个时候会调用C++的静态绑定,去判断当前的指针是 ...

  8. Vue.js 和 MVVM 的小细节

    Vue.js 和 MVVM 的小细节 转载 作者:流云诸葛 链接:www.cnblogs.com/lyzg/p/6067766.html MVVM 是Model-View-ViewModel 的缩写, ...

  9. 学习Java,容易被你忽略的小细节(3)

    在<学习Java,容易被你忽略的小细节(2)>中我们已经深入讨论过String类中equals()方法的使用,在本文中我们将进一步讨论equals()方法在其他境况下的使用方法. 首先,我 ...

随机推荐

  1. &lbrack;蟒蛇菜谱&rsqb;Python日志记录最佳实践

    # -*- coding: utf8 -*- import logging # 创建一个logger logger = logging.getLogger('mylogger') logger.set ...

  2. Apple开发者账号简介

    苹果对开发者主要分为3类:个人.组织(公司.企业).教育机构.即: 1.个人(Individual) 2.组织(Organizations) 组织类又分为2个小类: (1)公司(Company) (2 ...

  3. ccrendertexture to uiimage

    CCRenderTexture *renderTexture; [renderTexture getUIImage];

  4. Tomcat系列之Java技术详解

    一.概述 1.前言 在前面几篇博客中,我们和大家说了负载均衡器服务器.Web服务器.反向代理服务器.缓存服务器,从这篇博客开始我们和大家说说应用程序服务器,对于上述内容不了解的博友可以去参考一下我们前 ...

  5. 线段树(updata&plus;query)

    I Hate It Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  6. UVA - 10635 最长公共子序列

    input n,p,q 2<=n<=250 1<=p,q<=n*n 1 a1 a2 a3 ... ap 1<ai<n*n,ai!=aj 1 b1 b2 b3 ... ...

  7. BZOJ3489 A simple rmq problem K-D Tree

    传送门 什么可持久化树套树才不会写呢,K-D Tree大法吼啊 对于第\(i\)个数,设其前面最后的与它值相同的位置为\(pre_i\),其后面最前的与它值相同的位置为\(aft_i\),那么对于一个 ...

  8. Arcgis API for JS——打印控件乱码

    在通过Arcgis API for JS编写打印控件进行地图下载时,总发现地图字体乱码,如下图: 解决方法: 在装有ArcGIS Server,要调用服务的电脑或服务器上找到下图文件夹

  9. Spring PropertyResolver 占位符解析(一)API 介绍

    Spring PropertyResolver 占位符解析(一)API 介绍 Spring 系列目录(https://www.cnblogs.com/binarylei/p/10198698.html ...

  10. 便利的初始化view以及设置tag值

    便利的初始化view以及设置tag值 效果 源码 https://github.com/YouXianMing/iOS-Project-Examples 中的 SetRect // // Access ...