3.将C++的标识符转成OC的标识符
C++的标识符和OC一样由数字字母下划线组成。打头的不是数字。当标识符超过一个单词,
C++採用全字母小写。单词间用下划线连接的书写规范,如:
bei_jing
OC採用除第一个单词外,其余单词首字母大写的书写规范。如:
beiJing //传入C++标识符,返回OC标识符 */
+ (NSString *)objcIdentifierFromCppIdentifier:(NSString *)idf
//{
// //首先获取第0个字母
// NSMutableString * str1 = [NSMutableString stringWithFormat:@"%c",[idf characterAtIndex:0]];
// // 从第一个字母往后遍历。遇到‘_’符号后,取出‘_’后的字符将小写转换为大写,让i+1。否则,直接拼接
// for (NSInteger i = 1; i < idf.length; i++) {
// unichar ch = [idf characterAtIndex:i];
// if (ch == '_') {
// ch = [idf characterAtIndex:i+1];
// [str1 appendFormat:@"%c",ch-32];
// i++;
// } else {
// [str1 appendFormat:@"%c",ch];
// }
// }
// return str1;
//}
//{
// NSMutableString * str = [[NSMutableString alloc]init];
// for (NSInteger i = 0; i < idf.length; i++) {
// unichar ch = [idf characterAtIndex:i];
// if (ch == '_') {
// unichar ch = [idf characterAtIndex:i+1];
// [str appendFormat:@"%c",ch-32];
// i++;
// }
// else
// {
// [str appendFormat:@"%c",ch];
// }
// }
// return str;
//}
{
NSMutableString * str = [ NSMutableString stringWithFormat:@"%c",[idf characterAtIndex:0]];
for(NSInteger i = 1;i < idf.length;i++)
{
unichar ch = [idf characterAtIndex:i];
if(ch == '_')
{
unichar ch = [idf characterAtIndex:i+1];
[str appendFormat:@"%c",ch-32];
i++;
}
else
{
[str appendFormat:@"%c",ch];
}
}
return str;
}

将C++的标识符转成OC的标识符的更多相关文章

  1. html5 请求的URL转成 OC可用属性字符串显示

    NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:helpUrlStr]]; NSString *string = [ ...

  2. iOS开发 将html 富文本文字 转换成oc 的富文本

    - (NSMutableAttributedString *)mf_htmlAttribute:(NSString *)htmlString{ htmlString = [NSString strin ...

  3. oc字符串+数组+字典操作题目

    1. 判断中间目录是否存在 (10分) 比如 传入字符串 @"/home/qianfeng/oc.txt" 和 @"qianfeng" 返回:YES 传入字符串 ...

  4. ARC下OC对象和CF对象之间的桥接(bridge)

    在开发iOS应用程序时我们有时会用到Core Foundation对象简称CF,例如Core Graphics.Core Text,并且我们可能需要将CF对象和OC对象进行互相转化,我们知道,ARC环 ...

  5. 面试时如何优雅的谈论OC

    在面试中,我们经常会遇到一些原理性的问题,很常识但很难用通俗的语言解释清楚,这也是大部分业务级程序员经常失误的地方.虽然写了多年代码,但是核心思想不清,导致自己的后续发展受限,这是一个优秀的程序员和普 ...

  6. OC中的自动引用计数

    目录: 1,自动引用计数的定义 2,强引用和弱引用 3,类比手动引用 4,循环引用 5,CoreFoundation 内容: 自动引用计数的定义: (Automatic Reference Count ...

  7. oc 字符串

    #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { ...

  8. OC字符串的一些常用的函数。

    )//获取字符串长度 NSUInteger len= str.length; () //通过指定索引返回对应的字符 unichar ch =[str characterAtIndex:]; ()//通 ...

  9. OC语言-07-OC语言-Foundation框架

    结构体 NSRange/CGRange 用来表示一个元素在另一个元素中的范围,NSRange等价于CGRange 包含两个属性: NSUInteger location:表示一个元素在另一个元素中的位 ...

随机推荐

  1. 去除ie下select框箭头

    select::-ms-expand { display: none;}兼容ie10及以上

  2. ArrayList 和 LinkedList 区别。

    1. ArrayList和LinkedList都是实现了List接口的容器类,用于存储一系列的对象引用.他们都可以对元素的增删改查进行操作. 2. ArrayList是实现了基于动态数组的数据结构,L ...

  3. Dev Express中Dock panel的使用

    使用DockManager,添加DockPanel. 1,DockManager位于“导航和布局”分类中. 添加一个DockManager控件到窗体中以后,即是在当前窗体类中,添加一个DockMana ...

  4. LeetCode刷题笔记-递归-路径总和

    题目描述: 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和. 说明: 叶子节点是指没有子节点的节点. 示例: 给定如下二叉树,以及目标和 su ...

  5. HDU 4436 str2int

    str2int Time Limit: 3000ms Memory Limit: 131072KB This problem will be judged on HDU. Original ID: 4 ...

  6. xtu summer individual 1 A - An interesting mobile game

    An interesting mobile game Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on H ...

  7. [转载] Asynchronous ActionScript Execution

    Asynchronous ActionScript Execution Date September 19, 2009 Language ActionScript 3.0 Target Flash P ...

  8. hdu 1501 基本搜索深搜

    #include<stdio.h> #include<string.h> char s1[300],s2[300],s[500]; int len1,len2,len3,fla ...

  9. HH的项链(codevs 2307)

    题目描述 Description HH有一串由各种漂亮的贝壳组成的项链.HH相信不同的贝壳会带来好运,所以每次散步完后,他都会随意取出一段贝壳,思考它们所表达的含义.HH不断地收集新的贝壳,因此,他的 ...

  10. Flex的Combobox组件使用技巧

    1.显示提示设置Prompt属性可以为Combobox添加一个默认提示.如果没有设置selectedIndex,默认selectedIndex=-1,就显示Prompt的内容.Flex3如果不设置Pr ...