Objective-C( Foundation框架 一 常见的结构体)
常见的结构体 (NSPoint,CGPoint)、(NSRange,CGRange)、(NSSize,CGSize)
苹果官方推荐使用CG开头的结构体
NSRange是Foundation框架中常见的结构体它的定义如下:
typedef struct _NSRange
{
// 范围的起始位置
NSUInteger location;
// 范围的长度
NSUInteger length
}
NSUInteger的定义:
typedef unsigned int NSInteger;
typedef unsigned long NSUInteger;
NSRange创建的几种方式
NSRange range;
range.location = ;
range.length = ;
range= (NSRange){, };
NSRange r = NSMakeRange(, );
CGPoint 和 NSPoint :用来表示二维平面的一个点
CGPoint 是NSPoint的一个别名
struct CGPoint {
CGFloat x; 点的x方向
CGFloat y; 点的y方向
};
用法:
// 表示二维平面的一个点
CGPoint p1 = NSMakePoint( ,);
NSPoint p2 = CGPointMake(,); CGPoint c1 = { , };
CGSize 和 NSSize:用来表示平面的面积
struct CGSize {
CGFloat width; 宽
CGFloat height; 高
};
CGSize s1;
s1.width = ;
s1.height = ; // OC中特有的方式
CGSize s2 = CGSizeMake(, );
CGRect 和 NSRect:表示在平面上左上角是某个点的矩形区域
struct CGRect {
var origin: CGPoint // 表示矩形左上角的点
var size: CGSize // 表示矩形的大小
init()
init(origin origin: CGPoint, size size: CGSize)
}
CGRect r = {{, },{, }};
// OC特有方式
CGRect r1 = CGRectMake(, , , );
NSRect r2 = NSMakeRect(, , , );
// 打印方式
NSLog(@"r1 = %@", NSStringFromRect(r1));
Objective-C( Foundation框架 一 常见的结构体)的更多相关文章
- iOS Foundation框架简介 -1.常用结构体的用法和输出
1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...
- object-c 框架之经常使用结构体
Foundation 框架定义经常使用结构体.结构体採用object-c 定义:经常使用NSSRange,NSPoint.NSSize,NSRect等 一.NSRange 创建范围结构体. 方法:NS ...
- Objective - c Foundation 框架详解2
Objective - c Foundation 框架详解2 Collection Agency Cocoa provides a number of collection classes such ...
- OC中常见的结构体,以及NSNumber、NSValue、NSDate的使用
常见的结构体 NSPoint和CGPoint NSSize和CGSize NSRect 和 CGRect NSPoint和CGPoint的使用 NSPoint和CGPoint是同义的 typedef ...
- Foudation框架之一些常用结构体和常用类
表示范围作用的结构体:NSRange: 有三种方式创建新的NSRange: 1.NSRange range: range.location = 17; ...
- linux驱动开发( 五) 字符设备驱动框架的填充file_operations结构体中的操作函数(read write llseek unlocked_ioctl)
例子就直接使用宋宝华的书上例子. /* * a simple char device driver: globalmem without mutex * * Copyright (C) 2014 Ba ...
- 13.Object-C--浅谈Foundation框架常用的结构体
------- android培训.iOS培训.期待与您交流! ---------- 昨天学习了Foundation框架中常用的结构体,下面我简单的总结一下,如果错误麻烦请留言指正,谢谢! Found ...
- iOS Foundation框架 -1.常用结构体的用法和输出
1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...
- OC 知识:Foundation 框架及相关类详尽总结
本文用来介绍Foundation框架的相关知识,以及Foundation框架所提供类的相关知识总结. 1. 框架介绍 框架是由很多类.方法.函数和文档按照一定的逻辑组织起来的集合,以使开发程序变得更加 ...
随机推荐
- NULLIF()函数使用讲解
NULLIF()函数接受两个参数.如果它们相等,那么返回空值:否则,返回第一个参数. 等价于下面的表达式: case when expression1=expression2 then null el ...
- System.arraycopy
ref : http://blog.csdn.net/jaycee110905/article/details/45228249
- Android -- 自定义View小Demo,动态画圆(一)
1,转载:(http://blog.csdn.NET/lmj623565791/article/details/24500107),现在如下图的效果: 由上面的效果图可以看到其实是一个在一个圆上换不同 ...
- MVC:从客户端中检测到有潜在危险的 Request.Form 值 的解决方法
从客户端(Content="<EM ><STRONG ><U >这是测试这...")中检测到有潜在危险的Request.Form 值. 说明: ...
- mysql 乱码问题
A.mysql设置 1.service mysql stop 2.sudo vim /etc/mysql/my.cnf 在[mysqld]中添加下面两行 character_set_server = ...
- js typeof
var message = "some thing"; alert(typeof message); // string alert(typeof 95); // number a ...
- 使用C# yield关键字来提高性能和可读性
对于”yield”这个关键字我已经见过N次了,直到最近我才知道这个关键字所蕴含的力量.我将在下面展示出一些使用”yield”让你的代码有更高可读性和更好性能的例子. 为了让你对yield有一些快速概览 ...
- QT开发编译问题备忘
编译<Qt及Qt Quick开发实战精解> 的代码,编译出错,提示: Cannot find file: E:\学习资料\QT\<Qt及Qt Quick开发实战精解>代码\sr ...
- Maven 使用介绍
1,创建Project 先去官方网站下载一个最新版本http://maven.apache.org/download.cgi. 下载后解压,使用之前最好先将maven的bin目录设置到path环境变量 ...
- CentOs 设置静态IP 方法
在做项目时由于局域网采用自动获取IP的方式,导到每次服务器重启主机IP都会变化. 为了解决这个问题,需要设置静态IP. 1.修改网卡配置 编辑:vi /etc/sysconfig/network-sc ...