八、Foundation -常用结构体
一、NSRange
在foundation/NSRange.h中对NSRange的定义
typedef struct _NSRange{
NSUInteger location;
NSUInteger length;
} NSRange;
//typedef unsigned long NSUIntegr;
这个结构体用来表示事物的一个范围,通常是字符串里的字符范围或者集合里的元素范围
location表示该范围的起始位置
length表示该范围内所含的元素个数
三种方式创建一个NSRange变量
1、直接给成员赋值
NSRang range;
range.location = 8;
range.length = 3;
2、应用C语言的聚合结构赋值机制
NSRange range = {7,3};
或者 NSRange range = {.lcation = 8,.length = 3};
3、Foundation框架提供的一个快捷韩函数NSMakeRane
NSRange range = NSMakeRange(7,3);
二、NSPoint(CGPoint)位置
NSPoint p ;
p.x=10;
p.y=5;
快速创建方法
NSPoint p = NSMakePoint(2,10);
或者p = CGPointMake(2,10);
打印
NSString *str = NSStringFormPoint(p);
NSLog(@"%@",str);
三、NSSize(CGSize)宽度和高度
NSSize size;
size.width=100;
size.height=90;
size = NSMakeSize(90,100);
size =CGSizeMake(10,20);
打印
NSString *str = NSStringFormPoint(size) ;
NSLog(@"%@",str);
四。NSRect (CGRect) 包含了点,包含了宽度
sturct CGRect{
CGPotin origin;
CGSize size;
}
NSRect rect ; //CGRect rect;
rect.origin.x=10;
rect.origin.y=20;//不允许rect.origin={10,20}
rect.size.width =100;
rect.size.height=36;
快速创建
rect = NSMakeRect(10,10,80,80);
或者
rect = CGRectMake(10,10,23,34);
NSString *str = NSStringFormRect(rect) ;
八、Foundation -常用结构体的更多相关文章
- 从头开始-07.Foundation框架常用结构体
一.Foundation框架常用结构体NSRange\CGRange.NSPoint\CGPoint.NSSize\CGSize. NSRect\CGRect 的使用 1. 基本使用: //NSRa ...
- foundation框架—结构体
Foundation框架—结构体 一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框 ...
- Objective-C:Foundation框架-结构体
在Foundation中定义了很多常用结构体类型来简化我们的日常开发,这些结构体完全采用Objective-C定义,和我们自己定义的结构体没有任何区别,之所以由框架为我们提供完全是为了简化我们的开发. ...
- 李洪强iOS开发之Foundation框架—结构体
Foundation框架—结构体 一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框 ...
- Foundation框架 - 结构体
一.基础知识 如果要想使用 Foundation 框架的数据类型,那么包含它的主头文件就可以了.即 #import <Foundation/Foundation.h> 补充: Core F ...
- iOS Foundation框架简介 -1.常用结构体的用法和输出
1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...
- iOS Foundation框架 -1.常用结构体的用法和输出
1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...
- [OC Foundation框架 - 1] 常用结构体
底层封装是使用了typedef定义的结构体 typedef struct _NSString{ xxx xxx } NSString; 1. NSRange 结构体 #注意结构体不是对象 3种定义 ...
- Foudation框架之一些常用结构体和常用类
表示范围作用的结构体:NSRange: 有三种方式创建新的NSRange: 1.NSRange range: range.location = 17; ...
随机推荐
- angularjs 的ng-bind-html过滤了内容的style
1.不使用ng-bind-html,使用trustAs() trustAsHtml(value) = trustAs($sce.HTML, value) trustAsJs(value) = ...
- jQuery.makeArray() 函数详解
jQuery.makeArray()函数用于将一个类数组对象转换为真正的数组对象. 所谓"类数组对象"就是一个常规的Object对象,但它和数组对象非常相似:具备length属性, ...
- android ImageSwitcher
<?xml version="1.0" encoding="UTF-8"?> <RelativeLayout xmlns:android=&q ...
- System.Data.Dbtype转换为System.Data.SqlDbType
最近在做一些OM Mapping的准备工作,新学了一招. 如果要将System.Data.Dbtype转换为System.Data.SqlDbType,以前以为要写Switch Case语句.其实有很 ...
- Arcengine实现创建网络数据集札记(三)
后记 下面给出项目中用到的自定义的封装类. AE许可初始化封装类: public class AELicenseChecker { private static volatile AELicenseC ...
- 转:HTTP 1.1与HTTP 1.0的比较
原文地址:http://blog.csdn.net/elifefly/article/details/3964766 HTTP 1.1与HTTP 1.0的比较 一个WEB站点每天可能要接收到上百万的用 ...
- Android Sqlite 实例入门
通过一个简单的例子来学习Sqlite,学生选课系统,一开始的需求是学生可以选课,选课完成后可以查询到已经选择的课. 首先设计三个表,学生,课程,选课.学生表存储学生的信息,课程表存储课程的信息,选课表 ...
- iOS设计模式之单例模式
单例模式 基础理解 所有类都有构造方法,不编码则系统默认生成空的构造方法,若有显示定义的构造方法,默认的构造方法就会失效. 单例模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全 ...
- App开发流程之源代码Git管理
base项目已经可以编译运行了,只不过没有实际功能而已.继续完善base项目前,我们需要考虑一下代码管理的事情了. 不管是一个人开发还是一个团队开发,对源代码进行版本管理是必须的,任何人对代码的的任何 ...
- 【原】结构体包含CString类型成员变量出错的原理
问题如下:我定义了如下的一个结构体: typedef struct{ CString csText;}MyStruct; 并有如下的程序段1:MyStruct * p=NULL;p=(MyStru ...