首页 > 其他 > 详细

替换NSString类中的stringWithFormat:方法

时间:2014-07-16 18:05:55      阅读:158      评论:0      收藏:0      [点我收藏+]

替换NSString类中的stringWithFormat:方法

bubuko.com,布布扣

先给出源码:

YXUseful.h

//
//  YXUseful.h
//  NSString
//
//  Copyright (c) 2014年 Y.X. All rights reserved.
//

#import <Foundation/Foundation.h>

NSString * String(NSString *format, ...);

YXUseful.m

//
//  YXUseful.m
//  NSString
//
//  Copyright (c) 2014年 Y.X. All rights reserved.
//

#import "YXUseful.h"

NSString * String(NSString *format, ...)
{
    va_list ap;
    va_start (ap, format);
    
    NSString *body = [[NSString alloc] initWithFormat:format arguments:ap];
    
    va_end (ap);
    
    return body;
}

使用情况:

bubuko.com,布布扣

从上图就能看出,String明显要比下面的方式简单了不少,对吧:)

从实现的角度上来看,是下面的方式(你绝对没有见过可以带多个参数的这种呢)

bubuko.com,布布扣

"..." 这个不定参数列表也许你是第一次见到:)

当然也有弊端:

bubuko.com,布布扣

 

总结:

其实,实现起来并不容易,如果从来没有接触过,是绝对写不出来的,因为,你永远也不会知道需要va_start,va_end才能够正常使用:)

替换NSString类中的stringWithFormat:方法,布布扣,bubuko.com

替换NSString类中的stringWithFormat:方法

原文:http://www.cnblogs.com/YouXianMing/p/3842617.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!