自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Good good study!

Day day up!

  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

原创 Language Reference

Language Reference1.关键字Keywords usedin declarations: class,deinit, enum,extension, func,import, init, internal,let, operator, private, protocol, public, static, struct, subsc

2014-07-28 21:32:13 544

原创 Advanced Operators

/* Advanced Operators1.默认运算是不可以溢出的,否则报错。如果是故意溢出,但是swift提供了一组已&开头的运算符 &+可以溢出。 Beta3中测试是不可以的??Overflow addition (&+)Overflow subtraction (&-)Overflow multiplication (&*)Overflow

2014-07-28 17:06:46 522

原创 Access Control

/* Access control 需要Xcode6 Beta41.public 可以在定义文件的内部和外部访问  internal 可以用在模块哪的任何文件访问,模块外文件不可访问  private 只能在本文件内使用  默认的访问级别为internal2.元组的访问级别是由其构成元素决定的,取所有成员的最低级别。3.函数的的访问级别不是默认的,而

2014-07-28 15:10:25 630

原创 Generics

/* 范型 Generics C++中的模版函数,模板类1.范型函数2.Generic Type3.范型类型的扩展4.范型类型约束(给T加一个约束,不是所有类型都可以用)5.用typealias定义范型6.可以用where语句来对类型参数列表进行限制*///1.范型函数func testGenerics(para1:

2014-07-28 14:12:13 521

原创 Protocol

/* Protocol1.协议为类,枚举,结构体等遵循者定义了一套蓝图,该蓝图包括方法(实例,Type方法),属性,operator和subscripts等具体的样子。这些遵循者遵循者在具体的实现中必须实现协议中规定的属性或者方法。2.类不可以多继承,但是协议可以多继承,继承父类需要放在前面,多个用逗号隔开class someClass: Sup

2014-07-27 22:27:58 580

原创 Extension

/*Extensions提供了一个接口,在不改变即有类型的前提下添加自己的东西。比如系统的类型Int我们是不能随便修改的,但是可以通过extension来扩展1.添加computed properties和静态的computed static properties2.定义实例方法和type methods 注意:不能override既存的函数

2014-07-27 15:13:03 448

原创 iOS UI初探

怎么进行UI开发iOS和OSX开发UI用的库是Cocoa,具体iOS和OSX还有一些区别,可以参见官网说明。Cocoa中包含很多的框架,其中iOS用到的是Foundation和Cocoa TouchCocoa历史1980年代 NeXT强大开发环境NeXTSTEP诞生,这也是库中都带NS前缀的原因。1996年 苹果收购NeXT,在此基础上诞生了Cocoa3.Coc

2014-07-27 13:47:06 591

原创 Nested Type

/* Nested Type类型定义后的适用范围可以被限定大括号内尤其是枚举,常常被某个特定的类或结构体使用,则不需要暴露到外部有些结构体和类也一样只用于特定的context中,这时可以用嵌套类型。//✨✨可以在外部来引用内部嵌套类型。var outRef = NestedType.InnerType*/cla

2014-07-26 17:22:30 858

原创 TypeCast Any AnyObject

/* TypeCase 1.downcast 向下转换将一个父类类型的变量(可能本来时子类类型,在之前的运算中被转换成父类)转换为子类类型的变量2.upcast 与之相反。3.不是继承关系的类不可以转换。4.as 与 as? 的区别:as?返回的时optional的。AnyObject 可以任何类的类型的实例,由于OC没有指定类型

2014-07-26 17:04:50 485

原创 Auto Reference Counting

/* ARCAutomatic Reference Counting1.强引用2.强引用死锁3.弱引用4.Unowned reference*/class Person{   let name:String   var apartment:Apartment?       init(na

2014-07-26 13:13:19 774

原创 deinit

/* deinit 只有类才可以有析构有些操作文件,套节字等需要自己释放资源的类,需要析构*/class DeInitClass{   init()    {       println("Init")    }        deinit//构造又参数,括号,返回值,析构没有。    {       pr

2014-07-24 19:54:34 1211

原创 Inheritance

/* Inheritance1.swift中没有给类定义一个超类(像python的Object一样),这就意味着作为superclass的空类什么都不能做。2.override一个函数时,需要在前面添加override关键字,构造器init不需要写override。3.注意overload实说函数名相同,参数不同。override实说函数名何参数返回值跟父类的相同。

2014-07-23 21:32:11 544

原创 构造函数 init

/* 构造函数 initinit函数,没有返回值,不能用func修饰,不能通过实例调用init,只能用init调用其他重载的init。init函数再override父类的init时,不需要写关键字override,普通的函数,属性需要写。✨在定义了自己的init后,默认的init就没有啦init函数结构体,枚举都可以有。但是deinit析构函数只能在类中

2014-07-22 22:47:12 1194

原创 Subscript

/*Subscript可以为类,结构体,枚举定义像数组下表访问一样进行访问的方法。不仅是一维还可以定义多维前面说过,字典,数组都是通过结构体来实现的,那他们就是利用subscript的方法实现了下标引用的功能。像字典dict["key"] = value 在实现的过程中是将key作为参数,value作为返回值类实现的。如果想做一个多维的下标,用多个参数即可。

2014-07-20 17:20:12 870

原创 Methods

//Method:类,结构体,枚举中定义的函数叫方法/*method第一个参数可以时local的,后面的参数必须时external的,即在调用的时候必须在前面加上标签,当然第一个参数也可以自己加上external限制。如果不想使用external参数,则可以用一个外部参数_,有无external就会变成不同的函数。即默认有external的参数,和加上_作为

2014-07-20 16:09:23 749

原创 property

/*属性:PropertyStored property:存储变量的属性,可以存在于类,结构体中,但枚举不能有stored propertyvar定义变量属性,let定义常量存储属性。可以赋初值。可以在类,结构体的初始化(构造)函数中修改属性,包括常量属性LazyStored Property:类或结构体在initialize后,仅在下次被使用前

2014-07-20 10:06:25 754

原创 Classes and Structures

Classes and Structures

2014-07-19 10:46:27 538

原创 Enumerations

Enumerations

2014-07-19 10:44:33 520

原创 Closure

import Foundation//闭包 closures 同python中的lambda类似//再swift中闭包的意思好像更广一些//全局函数被看作是一个有名字不可以捕获值(capture values)的闭包//Nested function被看作是有名字可以从父函数中捕获值的闭包//Closure是一个没有名字,用来定义简单

2014-07-16 22:38:22 596

原创 Function

import Foundation//函数本身被看作一个类型,可以将函数作为参数,可以在函数中返回一个函数。//同样可以在函数中定义一个内部函数。Nested Function//variadic 可变参数 //swift 用...可以接受可变参数,想其他语言类似,如果由可变参数,必须放在最后//另外,可变参数必须是指定的相同类型的,

2014-07-14 22:44:42 577

原创 Label

/*    标签可以用来标记一个循环体或者switch代码块,当使用break或者continue时,    带上这个标签,可以控制该标签代表对象的中断或者执行。用在嵌套循环中比较好用。*/var price = [1,2, -2, 3, 4, -1]Start:for pin price{    switch price

2014-07-13 23:23:38 563

原创 switch语句

switch与其他语言的显著区别1)case中会自动break,即即使没有break语句的case中,也不会连续执行下一条case2)可以有多个条件语句var char ="a"switch( char ){   case "A":        println("A")   //每个case必须有一条语句    ca

2014-07-13 21:34:44 570

原创 Optional-Optional Chaining

为什么optional类型会存在因为在swift中,所有的变量必须在赋初值后才可以使用,这就意味着你没法判断某个变量是否已经被赋初值了即如下代码是不可能的。var str:Stringif str //报错{    }为了解决这个问题(个人理解),Optional类型诞生啦。/*Optional类型表示的内容要不是某个值,要么

2014-07-13 15:28:58 1486

原创 Operator

在数值越界是会出现编译错误,如以下情况var d1:Int8 =123d1 +=250swift中支持浮点数取余运算 remainder operator %println(3%2.5) //0.5swift中的前置++后置++同C语言中一样。其他的比较,逻辑,三元操作符都同C类似。只是逻辑运算符只能用于bool类型。

2014-07-13 00:29:24 613

原创 CollectionType

两种集合类型array dictionary数组中存储的数据类型需要相同,三种定义数组的方式//不知道为啥这种方法不行,可能是beta3版本新增var a1:[String] = ["test", "test2"]var a2:Array = ["test", "test2"]var a3 = ["test", "test2"]import

2014-07-13 00:12:35 1062

原创 String&Charactter

Swift数据类型Character可以是任意的unicode的数据。Character可以和String进行+操作,但不象python各自都不支持*操作。Character 和String在书写时都需要用双引号初始化一个空字符串var emptyString = “”var emptyString = String()

2014-07-12 17:04:28 524

原创 Swift基本类型

一)Data typeInt, Double, Float, Bool, String, Array,tuple, Dictionary,OptionalInt8,UInt8,Int16,UInt16,Int(32系统长度32,64则为64),UIntoption Type变量的定义:默认的变量类型是不需要定义为类型的,需要声明时的写法为:

2014-07-12 10:41:10 613

uCOS-II

Micrium-uCOS-II-V286<br>0分分享 共同学习

2008-07-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除