方法:方法是Objective-C独有的一种结构,只能在Objective-C中声明、定义和使用,C语言不能声明、定义和使用。

1、类方法以+号开头,对象方法以-号开头
+ (void) init;        // 类方法
- (void) show;                // 对象方法

2、在@interface和@end之间声明,在@implementation和@end之间定义
@interface Test : NSObject
// 方法声明
+ (void) init;
- (void) show;
@end
@implementation Test
// 方法实现
+ (void) init
{

}
- (void) show
{

}
@end
3、类方法只能由类来调用,对象方法只能由方法来调用
// 调用类方法
[Test init];
// 调用对象方法
Test *t = [Test new];
[t show];
4、方法归类、对象所有。
5、方法声明和实现中用到的数据类型必须用()括住。

函数:函数即C语言中的函数,在C和Objective-C中都声明、定义和使用。

1、函数能写在文件中的任意位置(@interface和@end之间除外),函数归文件所有。
int add(int num1, int num2)
{
        return num1 + num2;
}
2、函数调用不依赖于对象。
int sum = add(1, 2);
3、函数内部不能直接通过成员变量名访问某个对象的成员变量。

转载于:https://www.cnblogs.com/hangdada/p/4982994.html

OC中方法与函数的区别相关推荐

  1. Python 中各种imread函数的区别与联系

    Python 中各种imread函数的区别与联系 最近一直在用python做图像处理相关的东西,被各种imread函数搞得很头疼,因此今天决定将这些imread总结一下,以免以后因此犯些愚蠢的错误.如 ...

  2. python中imread什么意思_Python 中各种imread函数的区别与联系

    Python 中各种imread函数的区别与联系 最近一直在用python做图像处理相关的东西,被各种imread函数搞得很头疼,因此今天决定将这些imread总结一下,以免以后因此犯些愚蠢的错误.如 ...

  3. python中imread用法_【转载】Python 中各种imread函数的区别与联系

    Python 中各种imread函数的区别与联系 最近一直在用python做图像处理相关的东西,被各种imread函数搞得很头疼,因此今天决定将这些imread总结一下,以免以后因此犯些愚蠢的错误.如 ...

  4. Scala方法定义,方法和函数的区别,将方法转换成函数

    1. 定义方法和函数 1.1. 定义方法 方法的返回值类型可以不写,编译器可以自动推断出来,但是对于递归函数,必须指定返回类型 1.2. 定义函数 1.3.方法和函数的区别 在函数式编程语言中,函数是 ...

  5. oracle中存储过程和函数有什么区别,Oracle中存储过程和函数的区别

    Oracle中存储过程和函数的区别 存储过程和函数:  www.2cto.com 例子: [sql] //创建过程 create or replace procedure add_emailinfo( ...

  6. 金仓数据库KingbaseES数据库中存储过程和函数的区别

    关键字:存储过程 函数 KingbaseES数据库中存储过程和函数的区别如下表所示: 存储过程 函数 1 用于在数据库中完成特定的操作或者任务(如插入.删除等)  用于特定的数据(如选择) 2 程序头 ...

  7. 【MATLAB自带的svmtrain和libsvm中的svmtrain函数的区别】

    MATLAB自带的svmtrain和libsvm中的svmtrain函数的区别 libsvm中的svmtrain是mex文件,调用c运行,由于MEX文件执行效率高,故matlab中如果有文件重名的话, ...

  8. c语言中接口和函数的区别,接口与类的关系_接口函数和调用函数有什么区别

    描述 接口与类的关系 类与接口是两个概念,不能混淆. 接口概念 程序接口是操作系统为用户提供的两类接口之一,编程人员在程序中通过程序接口来请求操作系统提供服务.面向过程语言最基本的单元是过程和函数. ...

  9. 类,对象,方法与函数的区别

    面向对象(Object oriented Programming,OOP)编程 的思想主要是针对大型软件设计而来的.面向对象编程将数据和操作数据相关的方法封装到对象中,组织代码和数据的方式更加接近人的 ...

  10. python自带的sum()函数和numpy库中的sum()函数的区别

    在学习<机器学习实战>一书的第十章时,对 return np.sqrt(sum(np.power(vecA - vecB, 2))) 这样一条语句输出的结果老是不对,明明想要输出的是对两个 ...

最新文章

  1. Android NDK: WARNING: APP_PLATFORM android-14 is larger than android:minSdkVersion 8
  2. 好久没写博客了,改天要把原博客资料整理下,弄个链接什么
  3. java 图形用什么组件标题_java图形用户界面设计Swing常用组件(阅读).ppt
  4. 2.10 m 个样本的梯度下降-深度学习-Stanford吴恩达教授
  5. 朋友,别告诉我你懂分布式事务!
  6. Python连接DM8数据库
  7. 不服OceanBase跑分?今天起可到阿里云上一战
  8. 业务监控系统如何做,一起来看看如何使用Statsd+Graphite+Grafana搭建业务监控系统
  9. avalon2学习教程11数据联动
  10. JSON Assertion(JSON断言)
  11. 如何写好PRD文档?
  12. 管理信息系统案例分析_万华集团 IT 规划案例分析
  13. Javaweb安全——Java类加载机制
  14. IT系统风险管理体系的构建思路
  15. 数据库数据迁移的3种方案学习
  16. java中strlen,浅析C++中strlen函数的使用与模拟实现strlen的方法
  17. MATLAB里面接地叫啥,单相接地是什么意思
  18. 老旧笔记本电脑变服务器(笔记本电脑+内网穿透)
  19. 怎么改微信号第二次_微信号怎么改2017 微信号怎么改第二次方法介绍
  20. 光学心率传感器工作原理

热门文章

  1. (随机|批量)梯度下降法、(拟)牛顿法、共轭梯度法、启发式算法
  2. linux c 密码 星号,Linux C : 登录密码星号 * 显示,包含能回退 backspace
  3. map中key值带‘-’转json_h5模型转savedModel + tf_serving部署采坑记录
  4. Kotlin — 心印(熟悉与锻炼Kotlin语法)
  5. Flutter进阶第12篇: 检测应用版本号、服务器下载文件以及实现App自动升级、安装
  6. RK3288_Android7.1调试以太网ethernet
  7. rk3399出现UART2串口打印异常问题
  8. pycharm hotkey
  9. hdu4727搜索+stl。轻微剪枝
  10. 我没钱 如何推广自己的网站