object-c 转换 C++
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了object-c 转换 C++相关的知识,希望对你有一定的参考价值。
As it is with every Object: Before you can use it, you have to allocate and initialize it.
In the particular case of INIParser you have to do:
#include "ini.h"
INIParser * parser;
parser = [[INIParser alloc] init];
That done, you can start the parsing process, by doing another method call:
int err;
err = [parser parse: filename];
The next step is to retrieve the values of the variables contained in
sections of an INI-File:
NSString * str;
BOOL b;
ini i;
str = [parser get: name section: section]; // For generic strings
b = [parser getBool: name section: section]; // For Booleans
i = [parser getInt: name section: section]; // For integers
If you have retrieved all the variable values and you no longer need the
parser Object, you can deallocate it:
[parser release];
着急用,哪位高手帮帮忙
转C++ Code:
#include "ini.h"
INIParser * parser;
parser = new INIParser();
parser->init();//这个方法到底有还是没有不清楚,因为这个init是Objective-C特有的,原因是因为Objective-C不支持构造函数(又称构造体、构建器、构造方法,英语structor),如果没有的话把这句话去掉。
int err;
err = parser->parse(filename);//这个filename估计是形参或成员变量或者全局的吧,而且是个带路径的字符串
NSString * str;
BOOL b;
ini i;
str = parser->get(name,section); // 生成字符串
b = parser->getBool(name,section); // 生成布尔型的
i = parser->getInt(name, section); // 生成整数
这最后一段parser必须是指针哦,不然会报错。是类或引用的话用.来访问
另,楼主上面几句英语还要翻译吗?本回答被提问者采纳
iOS Object-C基础整理
新手入门
请多指教
文章目录
前言
虽然这些东西都比较基础,说实话,算是有点老旧了,但是记不住啊,只好再整理整理。
本文仅以简单示例,详情以后再慢慢整理。
UIView 隐藏显示
Button.hidden = YES;
Button.hidden = NO;
Layer 简单动画
// x 轴缩放
CABasicAnimation *scaleX = [CABasicAnimation animationWithKeyPath:@"transform.scale.x"];
scaleX.duration=2;
scaleX.fromValue = [NSNumber numberWithFloat:0];
scaleX.toValue = [NSNumber numberWithFloat:1];
scaleX.removedOnCompletion = YES;
[view.layer addAnimation:scaleX forKey:@"scaleX"];
JSON转换
+ (NSString *)convertToJsonData:(NSDictionary *) dict
NSError *error;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dict
options:NSJSONWritingSortedKeys
error:&error];
NSString *jsonString;
if (!jsonData)
NSLog(@"%@",error);
else
jsonString = [[NSString alloc]initWithData:jsonData encoding:NSUTF8StringEncoding];
return jsonString;
字体加粗
// 加粗
[UILabel setFont:[UIFont fontWithName:@"Helvetica-Bold" size:15]];
// 加粗斜体
[UILabel setFont:[UIFont fontWithName:@"Helvetica-BoldOblique" size:15]];
布局约束
[view mas_makeConstraints:^(MASConstraintMaker *make)
make.top.bottom.mas_equalTo(self.mas_top).with.offset(10); // 偏移
make.right.bottom.mas_equalTo(self.mas_right).with.offset(-10); // 右偏移
make.center.mas_equalTo(self.mas_center);
// 乘数百分比倍数
make.height.mas_equalTo(view.mas_width).multipliedBy(3);
// make.width.height.mas_equalTo(1000).multipliedBy(0.2); // 百分比
// 除数百分比 dividedBy(0.2) == multipliedBy(5)
make.width.height.mas_equalTo(1000).dividedBy(0.2);
make.width.height.lessThanOrEqualTo(self);
dividedBy
];
UIView 加边框
view.layer.masksToBounds = YES;
view.layer.borderColor = [[UIColor blackColor] CGColor];
view.layer.borderWidth = 1.0;
分割字符串
// 逗号分割字符串
NSArray *listArr = [listStr componentsSeparatedByString:@","];
反转数组
NSArray *reverList = [[arr reverseObjectEnumerator] allObjects];
UIViewController的生命周期
- 1.alloc
创建对象,分配空间 - 2.init ( initWithNibName | initWithCoder )
初始化对象,初始化数据 - 3.awakeFromNib
所有视图的outlet和action已经连接,但还没有被确定。 - 4.loadView
完成一些关键view的初始化工作,加载view。 - 5.viewDidLoad
载入完成,可以进行自定义数据以及动态创建其他控件 - 6.viewWillAppear
视图将出现在屏幕之前 - 7.viewWillLayoutSubviews
将要对子视图进行调整 - 8.viewDidLayoutSubviews
对子视图进行调整完毕 - 9.viewDidAppear
视图已在屏幕上渲染完成 - 10.viewWillDisappear
视图将被从屏幕上移除 - 11.viewDidDisappear
视图已经被从屏幕上移除 - 12.dealloc
视图被销毁,需要对你在init和viewDidLoad中创建的对象进行释放 - 13.didReceiveMemoryWarning
内存警告
延迟执行
不止下方一种哈,还有很多,比如NSTimer。
还有待研究。
// 延迟2s执行 refreshData 方法
[self performSelector:@selector(refreshData) withObject:nil afterDelay:2.0];
// 取消执行 refreshData 方法
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshData) object:nil];
// 取消执行所有延迟类方法
[NSObject cancelPreviousPerformRequestsWithTarget:self];
以上是关于object-c 转换 C++的主要内容,如果未能解决你的问题,请参考以下文章