07 2014 档案

摘要:1:类和结构体定义类和结构体分别通过关键字class 和struct定义。swift的编码风格是类class和结构体struct名字使用大写字母开头的匈牙利表示法,相反的。类的方法和属性则用小写字母开头的匈牙利表示法。结构体总是通过被复制而进行代码传递的。struct SForm{ var i... 阅读全文
posted @ 2014-07-31 17:55 酱酱爱 阅读(2773) 评论(1) 推荐(0)
摘要:1:swift的枚举类型是一系列的值,不同于c语言中枚举类型是整数类型。每个枚举定义了个新的类型2:switch类型匹配2.1枚举类型和switch单个匹配enum PlatType{case Plane, Ship, Train, Car}var eTransport:PlatType = Pla... 阅读全文
posted @ 2014-07-30 17:34 酱酱爱 阅读(1781) 评论(0) 推荐(0)
摘要:闭包可以捕获和存储其所在上下文中任意常量和变量的引用。 这就是所谓的闭合并包裹着 这些常量和变量,俗称闭包。Swift标准库中提供了sort排序函数,sort函数的第二个参数是个闭包。和OC中的block一个样子.import Foundationlet arraySource = ["abc", ... 阅读全文
posted @ 2014-07-28 15:18 酱酱爱 阅读(341) 评论(0) 推荐(0)
摘要:1: 函数形式:Swift函数以关键字func 标示。返回类型->后写明。如果没有返回类型可以省去。多个参数用,分割。其中参数名字在前:类型描述func GetName(strName:String)-> String{ return "for " + strName}let name = G... 阅读全文
posted @ 2014-07-25 16:38 酱酱爱 阅读(549) 评论(0) 推荐(0)
摘要:Swift采用类同c语言的流程控制语句,if, for, for-in, while, do-while , switch, break, continue .Swift语言的Switch语句自动添加了break效果,这样你可以不用没个case后面再写break.同c语言不同,swift语言的if ... 阅读全文
posted @ 2014-07-25 15:28 酱酱爱 阅读(516) 评论(0) 推荐(0)
摘要:Swift语言提供数组和字典的集合类型Swift 语言里的数组和字典中存储的数据值类型必须明确 ,即数组中只能存放同类型的数据。1: 数组数组的创建var shoppingList: String[] = ["tset", "hell", “hell”]var arrayInt:Int[] = [1... 阅读全文
posted @ 2014-07-24 18:33 酱酱爱 阅读(594) 评论(0) 推荐(0)
摘要:Swift 的 String 和 Character 类型􏰀供了一个快速的,兼容 Unicode 的方式来处理代码字符串常量let strTest = "I'm Swift"字符串空值判断let emptyString = ""if emptyString.isEmpty {2. println... 阅读全文
posted @ 2014-07-24 13:56 酱酱爱 阅读(340) 评论(0) 推荐(0)
摘要:swift运算有单目运算,双目运算和三元运算1:赋值操作var iX = 9var iY= 8iX = iY//iX is 8元组赋值let (iX, iY = (8, 7)// iX is 8, iY is 7和c语言不同的是,赋值操作不return值比如:var iA = 1var iB = 2... 阅读全文
posted @ 2014-07-23 17:25 酱酱爱 阅读(446) 评论(0) 推荐(0)
摘要:1:hello worldimport Foundationprintln("hello world")就这样,一句代码就可以打印出 hello world 不需要在末尾加";" 这里如果你加了";"同样可以运行的。感觉好像是为了避免麻烦,不再像c语言那样,每句代码末尾都加";",说来也是,从哲学来... 阅读全文
posted @ 2014-07-23 15:28 酱酱爱 阅读(363) 评论(0) 推荐(0)
摘要:比如:多个人来取仓库物品,我们为了做到多线程的互斥,一种方法是,对每个货品加个mutex互斥锁。另种方法,对窗口(只一个)加个mutex锁,但这样的话效率都比较低。而另钟解决办法是用信号量。信号量其实是mutex的一种加强版本,如果信号量的信号值设为1则其实退化成mutex。HANDLE Creat... 阅读全文
posted @ 2014-07-21 17:55 酱酱爱 阅读(1341) 评论(0) 推荐(0)
摘要:Event是内核对象,他可以分为自动和手动两种模式。HANDLE CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes,BOOL bManualReset,BOOL bInitialState,LPCTSTR lpName); 参数lpEventA... 阅读全文
posted @ 2014-07-21 16:50 酱酱爱 阅读(2910) 评论(0) 推荐(0)
摘要:Mutex 用途和critical section 非常类似,不过Mutex是内核对象,速度比section慢。Mutexes可以跨进程使用。另外Mutex在等待的时候可以设置等待时间。以下是两种对象的相关函数比较:CRITICAL_SECTION Mut... 阅读全文
posted @ 2014-07-18 16:17 酱酱爱 阅读(1501) 评论(0) 推荐(0)
摘要:任何时候当一段代码需要两个(或更多)资源时,都有潜在性的死锁。void SwapLists(List *list1, List *list2) { List *tmp_list; EnterCriticalSection(list1->m_section); EnterCriticalSection... 阅读全文
posted @ 2014-07-18 13:11 酱酱爱 阅读(822) 评论(0) 推荐(0)
摘要:所谓critical sections 意指一小块“用来处理一份被共享之资源”的程序代码。你可能必须在程序的许多地方处理这一块可共享的资源。所有这些程序代码可以被同一个critical section 保护起来。为了阻止问题发生,一次只能有一个线程获准进入critical section 中.cri... 阅读全文
posted @ 2014-07-18 11:31 酱酱爱 阅读(948) 评论(0) 推荐(0)
摘要:#include "stdafx.h"#include #include using namespace std;DWORD WINAPI ThreadFuncFirst(LPVOID param){int iCount = 50;while(iCount--){cout<<"\nThreadFun... 阅读全文
posted @ 2014-07-17 17:01 酱酱爱 阅读(12276) 评论(0) 推荐(0)
摘要:#pragma once#include "student.h"#include "Teacher.h"typedef enum _EPersonType{ ePersonUndefin = 0, ePersonStudent, ePersonTeacher}EPersonType... 阅读全文
posted @ 2014-07-11 17:02 酱酱爱 阅读(314) 评论(0) 推荐(0)
摘要:#include #include using namespace std;class Single{public: static Single* ShareInstance(); static void ReleaseInstance();private: Single(); ... 阅读全文
posted @ 2014-07-10 17:27 酱酱爱 阅读(256) 评论(0) 推荐(0)
摘要:为了解决多继承下的二义性而设计的vitrul继承class Base{public: Base(void); ~Base(void);};Base::Base(void){ printf("Base::Base():%p\n",this);}class ChildFirst : ... 阅读全文
posted @ 2014-07-10 16:51 酱酱爱 阅读(1332) 评论(0) 推荐(1)
摘要:比如。我们想实现一个Set类,而已经有一个List类可提供给你使用,我们到底用is-a(public继承)关系还是用has-a(组合)关系呢?1:如果使用is-a关系,则class Set:public List{。。。。};在处理插入的时候,List的insert方法不能满足我们的需要,因为它可以... 阅读全文
posted @ 2014-07-10 15:28 酱酱爱 阅读(2428) 评论(0) 推荐(0)
摘要:切勿重新定义继承来的带缺省参数的函数。我们知道,继承来的函数是virtual 的,至于原因在上一节中已经说明了,即“切勿重新定义父类non-virtual函数”。所以确切的描述应该是“切勿重新定义继承来的带缺省参数的virtual函数”。因为缺省参数是静态绑定,而virtual是动态绑定。typed... 阅读全文
posted @ 2014-07-10 15:22 酱酱爱 阅读(806) 评论(0) 推荐(0)
摘要:子类如果重新定义了父类的non-virtual函数则不会有多态效果。为方便描述,这里的方法和继承方式都用public。至于原因嘛,你懂的!1:子类直接继承父类方法class BaseOption{public: void Function();};void BaseOption::Functi... 阅读全文
posted @ 2014-07-10 12:46 酱酱爱 阅读(3804) 评论(0) 推荐(0)
摘要:1:访问控制1.1 public 这类型成员可以被类本身函数访问,也可以被外部创建的类对象调用。子类对象与子类内部可以访问1.2 protected类型成员,只能被类本身函数访问。外部创建的类对象没有访问权限。子类对象没有访问权限,子类内部可以访问1.3 private类型成员,只能被类本身函数访问... 阅读全文
posted @ 2014-07-09 18:26 酱酱爱 阅读(1288) 评论(0) 推荐(0)
摘要:C++函数模版与类模版。template void SwapFunction(T &first, T &second){}//函数模版template //类模版class CTemplate{public: void SWap(T &first, T &second){ }};#include... 阅读全文
posted @ 2014-07-08 17:30 酱酱爱 阅读(3772) 评论(0) 推荐(0)
摘要:拷贝构造函数要求把所有变量都需要做拷贝。在有继承关系情况先,子类的拷贝构造函数,需要调用父类拷贝构造函数。示例代码如下:class Base{public: virtual ~Base(); Base(const char *pStr); Base(const Base &othe... 阅读全文
posted @ 2014-07-08 13:34 酱酱爱 阅读(8018) 评论(0) 推荐(1)
摘要:在实现多态时候,基类的析构函数应该写成virtual。在用基类申明实例化的子类对象,在delete时候,如果基类不是virtual的析构函数则不能调用进子类的析构函数class Base{public: Base(); virtual ~Base();public: char *m... 阅读全文
posted @ 2014-07-07 17:51 酱酱爱 阅读(310) 评论(0) 推荐(0)
摘要:如果你一看见C++中const就脱口而出:“常量!”那只能说明你对c++不甚了解。或者说你太2了.const得一些使用方法与场景如下:1:const修饰普通变量,全局变量,静态变量1 const int iTmp = 1;2 int const iTmpEx = 2;变量保持其原有属性,只是多了一个... 阅读全文
posted @ 2014-07-07 15:52 酱酱爱 阅读(2991) 评论(0) 推荐(0)