博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
冷门_可变参数方法
阅读量:6159 次
发布时间:2019-06-21

本文共 732 字,大约阅读时间需要 2 分钟。

冷门_可变参数方法

OC 中用的比较少,重载接口用的比较少(个人)。即使有重载也可以用 id 来代替。


- (Student *) newStudentWithParams:(Student *)originalS, ... {    NSString *returnS;    va_list params; // 存放参数地址    va_start(params, originalS); // 初始化 params,当前 params 指向第一个参数 originalS    if (originalS) {        for (;;) { // 遍历参数的死循环            // 这里你可以对不同情况下的参数做不同的处理            Student *s = va_arg(params, Student *); // 通过 params 来遍历参数,  va_arg 的第二个参数用来计算参数数组中每个参数所占用的地址长度, 方便 params 进行遍历            if (!s) { // 当参数遍历结束后 va_arg 会返回 NULL                break;            }        }    }    va_end(params); // 置空 params    // 这里可以根据不同的情况作不同的处理     if (returnS == nil) {        return originalS;    }    return returnS;}

资料:

转载于:https://www.cnblogs.com/imock/p/6738039.html

你可能感兴趣的文章
android中的textview显示汉字不能自动换行的一个解决办法
查看>>
程序局部性原理感悟
查看>>
js中document.write()使用方法
查看>>
随机生成50个字段的elasticsearch的测试程序输入
查看>>
如何使用流量精灵刷网站流量
查看>>
使用AutoMapper 处理DTO数据对象的转换
查看>>
java使用POI获取sheet、行数、列数
查看>>
js 调用 oc 的解释
查看>>
Linux学习笔记——Ubuntu更新软件源
查看>>
非nodejs方式的vue.js的使用
查看>>
普林斯顿公开课 算法2-2:选择排序
查看>>
SharePoint 2013 开启訪问请求
查看>>
jQuery(三) javascript跨域问题(JSONP解决)
查看>>
Redis和Memcached的区别
查看>>
ubuntu17.04 调试系统工具bcc,systamtap安装
查看>>
Java微信公众平台开发(二)--微信服务器post消息体的接收
查看>>
分享一个HTML5画布实现的超酷文字弹跳球效果
查看>>
农民还乡
查看>>
asp.Net_图片上传的一个类库的源码
查看>>
Nagios+pnp4nagios+rrdtool 安装配置nagios(一)
查看>>