Foundation 框架定义经常使用结构体。结构体採用object-c 定义:经常使用NSSRange,NSPoint。NSSize,NSRect等

一、NSRange 创建范围结构体。

方法:NSMakeRange(參1,參2)。location和length。

二、集合数据类型。

1,NSPoint 创建一个点。

        方法:NSMakePoint(參1,參2)。x和y。

    2,NSSize 创建长和宽。

方法:NSMakeSize(參1,參2)。width和height。

以下是我的測试学习代码:

//
// FoundtionOftenStruct.h
// Array_01
//
// Created by selfimprovement on 15-6-4.
// Copyright (c) 2015年 FoundationFramework. All rights reserved.
// #import <Foundation/Foundation.h> @interface FoundtionOftenStruct : NSObject
{ }
//声明一个动态的方法。没有返回值
-(void)testNsRange;//NSRange表示一个范围
-(void)testNsPoit;//NSPoint表示一个点
-(void)testNsSize;//NSSize表示大小
-(void)testNsRect;//NSRect表示矩形
@end
//
// FoundtionOftenStruct.m
// Array_01
//
// Created by selfimprovement on 15-6-4.
// Copyright (c) 2015年 FoundationFramework. All rights reserved.
// #import "FoundtionOftenStruct.h" @implementation FoundtionOftenStruct
-(void)testNsRange{
NSString *strRange = @"0,1,2,3,4,5,6,7,8,9";
NSRange range1 = [strRange rangeOfString:@",2,"];
if (range1.length > 0) {
NSLog(@"range is%@",NSStringFromRange(range1));
}
}
-(void)testNsPoit{
NSPoint point =CGPointMake(10, 5);
NSLog(NSStringFromPoint(point));
}
-(void)testNsSize{
NSSize size = CGSizeMake(10, 5);
NSLog(NSStringFromSize(size));
} -(void)testNsRect{
NSRect rect = CGRectMake(1, 3, 10, 20);
NSLog(NSStringFromRect(rect));
}
@end
//
// main.m
// Array_01
//
// Created by selfimprovement on 15-6-1.
// Copyright (c) 2015年 FoundationFramework. All rights reserved.
//
#import "FoundtionOftenStruct.h" #import <Foundation/Foundation.h>
int main(int argc, const char * argv[]) {
@autoreleasepool {
FoundtionOftenStruct *rangeStruct = [FoundtionOftenStruct alloc];
rangeStruct.testNsRange;
rangeStruct.testNsPoit;
rangeStruct.testNsRect;
rangeStruct.testNsSize; } return 0;
}

測试效果:

2015-06-04 15:12:56.567 Array_01[914:303] range is{3, 3}

2015-06-04 15:12:56.582 Array_01[914:303] {10, 5}

2015-06-04 15:12:56.586 Array_01[914:303] {{1, 3}, {10, 20}}

2015-06-04 15:12:56.587 Array_01[914:303] {10, 5}

Program ended with exit code: 0




object-c 框架之经常使用结构体的更多相关文章

  1. Objective-C( Foundation框架 一 常见的结构体)

    常见的结构体 (NSPoint,CGPoint).(NSRange,CGRange).(NSSize,CGSize) 苹果官方推荐使用CG开头的结构体 NSRange是Foundation框架中常见的 ...

  2. iOS Foundation框架简介 -1.常用结构体的用法和输出

    1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...

  3. Foudation框架之一些常用结构体和常用类

    表示范围作用的结构体:NSRange:       有三种方式创建新的NSRange: 1.NSRange range:            range.location = 17;         ...

  4. linux驱动开发( 五) 字符设备驱动框架的填充file_operations结构体中的操作函数(read write llseek unlocked_ioctl)

    例子就直接使用宋宝华的书上例子. /* * a simple char device driver: globalmem without mutex * * Copyright (C) 2014 Ba ...

  5. 13.Object-C--浅谈Foundation框架常用的结构体

    ------- android培训.iOS培训.期待与您交流! ---------- 昨天学习了Foundation框架中常用的结构体,下面我简单的总结一下,如果错误麻烦请留言指正,谢谢! Found ...

  6. iOS Foundation框架 -1.常用结构体的用法和输出

    1.安装Xcode工具后会自带开发中常用的框架,存放的地址路径是: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.plat ...

  7. python如何将指定路径下的某类型文件,返回一个树形结构体,让前端显示为树形的目录结构

    最近遇到一个问题就是某个linux的目录下有各种文件现在的要求是只需要返回.kml格式的文件,并根据前端要求返回如下结构体即:[{'children': [{'children': [{'title' ...

  8. foundation框架—结构体

    Foundation框架—结构体 一.基本知识 Foundation—基础框架.框架中包含了很多开发中常用的数据类型,如结构体,枚举,类等,是其他ios框架的基础. 如果要想使用foundation框 ...

  9. Objective-C:Foundation框架-结构体

    在Foundation中定义了很多常用结构体类型来简化我们的日常开发,这些结构体完全采用Objective-C定义,和我们自己定义的结构体没有任何区别,之所以由框架为我们提供完全是为了简化我们的开发. ...

随机推荐

  1. 仿Orm 自动生成分页SQL

    分页的写法 自从用上了Orm,分页这种事就是腰不酸腿不痛了.不过有时候想用纯粹的ado.net来操作,希望返回的数据是原生的DataTable或DbDataReader类似的东西,故研究下怎么生成分页 ...

  2. 小Z爱图论(NOIP信(sang)心(bin)赛)From FallDream

    题目: 小Z最近喜欢上了图论,于是他研究了一下图的连通性问题.但是他遇到了一个难题. 给定一个n个点的有向图,求有多少点对(i,j)满足从i点出发能到达点j ? 小Z仅会简单的朴素算法,所以他想问问你 ...

  3. I2C总线介绍

    1. 简介 I2C, Inter-Integrated Circuit, 是一种串行通信总线,用于连接微控制器及其外围设备它是一种两线式串行总线(串行数据:SDA; 串行时钟频率:SCL), 利用电阻 ...

  4. 关闭 C4996 警告(_CRT_SECURE_NO_DEPRECATE)

    在使用VC 2005 的开发者会遇到这样的问题,在使用std命名空间库函数的时候,往往会出现类似于下面的警告: warning C4996: strcpy was declared deprecate ...

  5. poj 1106(半圆围绕圆心旋转能够覆盖平面内最多的点)

    Transmitters Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4955   Accepted: 2624 Desc ...

  6. JAVA版拆分大整数为2幂的和算法

    import java.util.ArrayList; import java.util.List; public class StrTest { public static void main(St ...

  7. Visual Studio跨平台开发(4):Xamarin Android控制项介绍

    前言 不同于iOS, Xamarin 在Visual Studio中针对Android, 可以直接设计使用者界面. 在本篇教学文章中, 笔者会针对Android的专案目录结构以及基本控制项进行介绍, ...

  8. select 动态添加 获取 整理

    比如<select class="selector"></select> 1.设置value为pxx的项选中 $(".selector" ...

  9. 有关时间限制使用和软件注册的设计(delphi)

    http://blog.sina.com.cn/s/blog_693cf1cf0100oyus.html procedure TForm1.form1create(Sender: TObject);v ...

  10. DotNetCore 笔记

    最近公司框架升级到DotNetCore了,但是在用post请求的时候,发现页面的post data后台并没有接收到数据,经过调查发现,netcore用法和之前的MVC5不一样,想要接收post里的da ...