自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (11)
  • 收藏
  • 关注

原创 [Cocoa]_[画直线、矩形、文字]

总结Cocoa下画直线、矩形、文字的方法,在界面开发种经常会遇到。1.画直线,有两种方法。(1)把直线看成是一个高度较小的的矩形 //(1)直线的本质是一个高度较小的矩形 NSRect rect5 = NSMakeRect(50, 70, 350, 5); NSBezierPath *path1 = [NSBezierPath bezierPathWithRect

2015-10-13 15:39:16 4266

原创 [Cocoa]_[总结异步调用函数的方法]

总结异步调用函数的方法。 1.dispatch_async #import int main(int argc, const char * argv[]){ @autoreleasepool { // insert code here... dispatch_async(dispatch_get_global_que

2015-10-10 16:51:19 1185

原创 [Objective-c]_[NSUserDefaults]_[基本使用]

NSUserDefaults是一个轻量级本地数据存储,如果只是保存少量的数据,像用户名、密码这些建议用NSUserDefaults。   NSUserDefault支持的数据格式:NSNumber、NSInteger、Float、Double、NSString、NSDate、NSArray、NSDictionary,BOOL类型。不能加入一个自定义类对象。  第一次运行写入数据并存储:

2015-10-09 18:45:04 1630

原创 [Objective-c]_[块语法的使用及应用场景]

objective-c的块语法。1.块语法的声明和定义声明:void (^blockReturningVoidWithVoidArgument)(void);int (^blockReturningIntWithIntAndCharArguments)(int, char);void (^arrayOfTenBlocksReturningVoidWithIntArgumen

2015-10-09 15:33:27 659

原创 [Cocoa]_[NSScrollView]_[界面切换]

总结通过一个类来管理各个界面之间的切换,这样程序用到哪些界面,之间的逻辑关系都会比较清晰。    我的例子是创建3个带.xib文件的NSViewController,在主类中通过NSScrollView类型的变量来切换不同的界面,比如在主类窗口里面拖动一个ScrollView并绑定到该变量中,我这里主类用默认的AppDelegate,还要把主类的指针传递给各个界面。下面是例子代码:view

2015-09-30 15:09:20 1893

原创 [windows]_[避免线程死锁]

线程死锁: 是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。线程死锁的原因:(1)忘记释放锁void ThreadFun1() { EnterCriticalSection(); if(/* error happens */) return; Leav

2015-09-28 00:17:33 707

原创 [windows]_[线程同步的方法]

windows下一般有四种线程同步的方法:(1)事件(2)信号量(3)互斥量(4)临界区下面将展示各自的用法(1)事件#include #include int g = 0;HANDLE events;DWORD WINAPI ThreadFun1(PVOID pParam){ while (g < 100) { WaitForSingle

2015-09-21 00:09:03 561 1

原创 [objective_[getter器和setter器的使用]

在objective-c中有@property和@synthesize,可以自动生成相应的getter和setter函数,给我们节约了不少代码和时间。当然,@property有各种参数,下面就总结下基本用法。1.简单使用在头文件和实现文件中添加这两句代码就会得到getter和setter器//头文件@property int age;//实现文件@synthesize

2015-09-01 23:32:11 421

原创 [Cocoa]_[获取系统时间]

//获取当前时间NSDate *now = [NSDate date];NSLog(@”now date is: %@”, now);NSCalendar *calendar = [NSCalendar currentCalendar];NSUInteger unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalend

2015-08-31 23:51:01 988

原创 [objective-c]_[performSelector的使用]

Objective-C中调用函数的方法是“消息传递”,这个和普通的函数调用的区别是,你可以随时对一个对象传递任何消息,而不需要在编译的时候声明这些方法。所以Objective-C可以在runtime的时候传递人和消息。首先介绍两个方法 SEL和@selector根据AppleObjective-C Runtime Reference官方文档这个传递消息的函数就是 id objc_msg

2015-08-31 23:45:01 588

转载 [开发工具]_[mac下svn的命令]

因为mac下的svn并不像windows的那么方便,基本都是在控制台上使用,所以这里总结一些常用命令。1、将文件checkout到本地目录123svn checkout path(path是服务器上的目录)例如:svn checkout svn://192.168.1.1/pro/domain简写:svn

2015-08-31 23:17:58 516

原创 [Objective-c]_[NSString的基本使用]

NSString是objective-c的字符串,这里总结下NSString的常用方法。//1. 串初始化NSString *str1 = [NSString stringWithString:@"test"];NSLog(@"str1 is %@",str1);//2.快速创建一个字符串 NSString *str2 = [[NSString alloc]initWithStri

2015-08-31 23:04:48 344

原创 NSOutlineView的简单使用

NSOutlineView是Cocoa的树形控件,这里介绍它的简单使用。首先在Xib文件里面拖出控件,然后建立一个委托,把DataSourceDelegate和Delegate绑定该委托。并且在该委托中加入必须的函数,这样数据才能导入进去。

2015-07-31 23:04:48 5558

原创 [Cocoa]_[界面切换]

一、首先在xib文件里面拖一个Scroll View 到窗口中然后在AppDelegate里面IBOulet 一个NSViewController变量并绑定刚刚的SCroll View.二、再创建两个带xib文件、继承于NSViewController的类三、在主xib界面中添加两个按钮,添加事件响应 点击按钮的时候做切换的操作,切换代码如下: [[scrollVie

2015-07-31 22:25:53 922

原创 [Cocoa]_[简单画图]

总结一些Cocoa画图的常用代码。points(NSPoint)同直角坐标系一样原点在左下角结构typedef struct _NSPoint{float x;float y;}NSPoint;定义:NSPoint thePoint;初始化:thePoint=NSMakePoint(0,0);Rects(NSRec

2015-07-31 09:13:50 1082

原创 从C++到objective-c

学习objective一段时间后做出一定总结,这里主要列举objective的特性还有和C++的不同点。一、objective的特性1.函数- (int) foo : (int) a : (char) b {}+ (int) foo : (int) a : (char) b {}这是objective-c的函数的声明形式-表示一个普通的成员函数+表示静态函数,不需要实体就可访问o

2015-07-31 00:03:09 709

原创 用C++实现查找指定文件夹下的类型文件名

在开发中我们会遇到要在指定文件夹下打开exe文件,我这里就介绍怎么去实现这种方法。这里我们用到win32的函数,WIN32_FIND_DATAW这个结构体来实现查找typedef struct _WIN32_FIND_DATA {DWORD dwFileAttributes; //文件属性FILETIME ftCreationTime; // 文件创建时间F

2015-06-30 10:10:03 2203

原创 VC下minizip+ZLib 解压文件

一、zlib开源库zlib是应用最广泛的压缩与解压缩zip文件的免费开源库,提供了数据压缩与解压缩的函式库。zlib中最关键的函数有以下两个:(1)int compress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen); (2)int uncompress(Bytef

2015-06-28 22:24:58 3569

原创 [界面设计模式]_[观察者模式]

一、观察者模式    观察者模式是一种一对多的模式,最贴切的解释就是杂志订阅,每次更新杂志的时候都会通知订阅杂志的人,所以观察者模式要有三个功能:    1.加入观察者到一个表中    2.从表中删除观察者    3.发送通知给表中所有的观察者    4.更新指定消息的内容二、windows控制台下的例子 #include #include

2015-06-09 11:10:28 482

原创 Windows环境下编译objective-c

一、在Windows环境下运行GNUstep1.登陆这个网站http://ftpmain.gnustep.org/pub/gnustep/binaries/windows/2.下载三个文件gnustep-msys-system-0.30.0-setup.exegnustep-core-0.31.0-setup.exegnustep-devel-1.4.0-setup.exe

2015-06-09 10:40:42 520

原创 用文件的读写和string作为临时存储区复制图片文件

读写用_wfopen(),所以都出来的是双字节的,所以涉及到字节转换,把都出来的数据转换成单字节然后再存在String类对象里面,写入新的文件时要重新转换成双字节再写入。代码如下:#include #include #include using namespace std;void Wchar_tToString(string& szDst, wchar_t *wchar){

2015-05-31 23:44:48 552

原创 ANSIC和Unicode之间的转换

一、简介 在VC开发中我们经常遇到字节转换的问题,因为现在开发基本都要用到Unicode,而C的函数都是ANSIC码的,如果我们在VC开发中需要用到C的函数就必须要处理这个问题,ANSIC码是单字节的,而Unicode是双字节的,本质上市单双字节的转换。二、ANSIC不同的国家和地区制定了不同的标准,由此产生了 GB2312、GBK、Big5、Shift_JIS 等各自的编码标

2015-05-31 21:05:58 796

原创 Java的String和StringBuffer的区别及应用场景

一、StringString类不是一个原始类型,可以通过它的定义分析。String类的定义:private final char value[];通过String类的定义我们可以看出一旦创建了这个对象,那它的值是不能改变的,对于已存在的String对象的修改实质上是创建一个新的对象,然后把新对象的值存进去。二、StringBufferStringBuffer是一个可变对象,

2015-05-31 20:35:31 890

原创 C++中string类所有函数的使用介绍

一、string类的简介string 是C++中的字符串。 字符串对象是一种特殊类型的容器,专门设计来操作的字符序列。 不像传统的c-strings,只是在数组中的一个字符序列,我们称之为字符数组,而C + +字符串对象属于一个类,这个类有很多内置的特点,在操作方式,更直观,另外还有很多有用的成员函数。二、string类函数的使用首先,使用string前必须包含头文件,

2015-05-22 14:00:25 785

原创 指针与数组

#include #include using namespace std;void main(){#define DIM2#ifdef DIM2 int sz[2][3] = { 1, 2, 3, 4, 5, 6 }; int *pa = sz[0]; //{1, 2, 3} int *pb = sz[1]; //{4, 5, 6} int *pc[2] =

2015-04-26 22:49:34 435

原创 C语言深入理解float

先说说32 位的 float型一个正的浮点数 X, 在计算机中表示为:         X = a  *  2e     这里 e 代表指数,  a 代表尾数,   在 计算机内部, 他们都是用二进制表示的. 其中 a 用二进制的科学表示法表示, 由于科学表示法第一位总是1 (0除外) , 所以第一位略去不计.  e 表示的时候, 因为要表示出负数, 所以 e要加上127 ,  实际运

2015-04-26 22:38:39 1242

原创 C语言如何防止野指针

一、野指针首先,我们先介绍下什么是野指针吧,野指针指指向一个已删除的对象或未申请访问受限内存区域的指针。与空指针不同,野指针无法通过简单地判断是否为 NULL 避免,而只能通过养成良好的编程习惯来尽力减少。对野指针进行操作很容易造成程序错误。二、出现野指针的原因1.指针变量未初始化任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的,它会乱指一气。所以,指针变量在创建的同时应当被初始

2015-04-12 21:13:04 1935

原创 C语言五大内存分区介绍

C语言分为五大内存分区:1、栈区(stack): —由编译器自动分配释放,存放函数的参数值,局部变量的值等。2、堆区(heap): 一般由程序员分配释放,若程序员不释放,程序结束时由系统释放。3、全局区(静态区,static): 全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。程序结束后由系统释放。

2015-04-12 20:25:25 9355

[android]_[MVP框架例子]

android开发的MVP例子。

2016-06-19

[Cocoa]_[切换view]

这是基于 Document-Base Application 来切换view的方法,一般用于制作pdf或chm文档。

2015-10-25

[Cocoa]_[NSTableView]_[添加复选框]

Cocoa下带有复选框的表格,只需要重定义一列的cell就可以实现

2015-10-15

[Cocoa]_[NSTableView]_[基本使用]

Cocoa下NSTableView的简单使用

2015-10-15

[Cocoa]_[画图]

Cocoa下简单的绘图操作,用两种方法实现。

2015-10-14

[Cocoa]_[画线、画矩形、画文字]

Cocoa下简单的画线、矩形、文字的例子

2015-10-13

[Cocoa]_[NSScrollView]_[切面切换]

例子代码是通过一个主委托来控制各个界面之间的切换。

2015-09-30

[Cocoa]_[NSOutlineView]_[多根显示]

Cocoa下NSOutlineView的使用例子,如何多根显示

2015-09-30

TCP/IP三卷

超级好东西!强烈建议学网络的看 经典网络教材!

2014-12-23

windows核心编程(带书签)

对于想深入理解多线程这块很有帮助,在现在比较高端的几乎都会用到,建议每天一章用心看 提升很快

2014-12-11

空空如也

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

TA关注的人

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