- 博客(33)
- 资源 (83)
- 收藏
- 关注
转载 cocoapods错误整理
xcode升级导致cocoapods很多奇葩问题1.pod setup执行后半年没反应解决办法设置淘宝的镜像gemsources−−removehttps://rubygems.org///等有反应之后再敲入以下命令 gem sources --remove https://rubygems.org///等有反应之后再敲入以下命令 gem sources -a http://ruby.taobao.
2015-06-23 22:00:38 520
转载 CocoaPods安装和使用教程
http://code4app.com/article/cocoapods-install-usage点这里查看原文
2015-06-23 20:34:59 445
原创 Objective-C----内存管理
规则:当你使用 new 、 alloc 或 copy 方法创建一个对象时,改对象的保留计数器的值为 1。当不再使用该对象时,你应该向该对象发送一条 release 或 autorelease 消息。这样,该对象将在其使用寿命结束时被销毁。当你通过其他方法获得一个对象时,假设该对象的保留计数器的值为 1 ,而且已经被设置为自动释放,难么你不需要执行任何操作来确保该对象得到清理。如果你打算在一段时间
2015-06-20 10:29:38 987
原创 Objective-C----NSDate、NSDateFormatter
直接上代码: /* * NSDate * */ //NSDate类创建的对象永远都是零时区(格林尼治标准时间)的时间对象,通过+date便利构造器创建的时间对象表示了当前时间 //GMT 格林尼治标准时间 NSDate *newDate = [NSDate date] ; NSLog
2015-06-20 10:06:31 700 2
原创 Objective-C----多态
优点:父类指针可以指向不同的子类对象 ;允许在多个类中定义同一个消息接口 ;、可以屏蔽不同子类对象之间的差异,写出通用代码 ;适应需求的不断变化 。
2015-06-20 10:01:02 1227
原创 Objective-C----autorelease pool
autorelease pool 使用注意事项:在 ARC 下,不能使用 [ [ NSAutoreleasePool alloc ] init ] ,而应当使用 @autoreleasepool ;不要把大量循环操作放到同一个 NSAutoreleasePool 之间,这样会造成内存峰值的上升 ;尽量避免对大内存使用该方法,对于这种延迟释放机制,还是尽量少用 ;sdk 中一般利用静态方法创建
2015-06-20 09:58:21 944
原创 Objective-C----Block 、数组排序
直接上代码://写⼀一个 返回值为整型 参数为NSString(仅⼀一个参// 数)的block,实现将字符串转换为整型的功能。// int (NSString *string) {// return [string intValue] ;// }// 把^int (NSString *string)赋值给int (^myBlock)(NSString *)
2015-06-20 09:49:35 1126
原创 Objective-C----快速枚举、数组排序
直接上代码: /* * 快速枚举 * */ NSLog( @"++++++++++++++++++" ) ; NSArray *testArray = @[@1, @2, @3, @4, @5] ; //通过快速枚举来遍历数组元素 for (NSArray *objec
2015-06-20 09:46:45 1451
原创 Objective-C----NSSet 、 NSMutableSet 、 NSCountedSet
直接上代码:/* * NSSet 不可变 集合 * */ // 两种初始化方式 NSSet *set1 = [[NSSet alloc] initWithObjects:@"1", @"2", @"3", nil] ; NSLog( @"%@", set1 ) ; NSSet *s
2015-06-20 09:44:47 1308
原创 Objective-C----NSString 、 NSMutableString
直接上代码://// main.m//// Created by on 15/4/2.// Copyright (c) 2015年 . All rights reserved.//#import <Foundation/Foundation.h>#import "Tire.h"int main(int argc, const char * argv[]) { //NSSt
2015-06-20 09:42:29 779
原创 Objective-C----NSDictionary、NSMutableDictionary
知识点:定义:字典(dictionary)是关键字及其定义的集合。上代码:/* * NSDictionary 不可变字典 * */ // 1、创建字典对象的常用方法 //在床架你字典对象时需要赋值键值对,但是顺序为:值,键(值在前,键在后的形式)。 NSDictionary *dic1 = [
2015-06-20 09:38:56 1278 1
原创 Objective-C----NSArray、NSMutableArray
讲解:NSArray 类有两个限制。首先,它只能存储 Objective-C 的对象,而不能存储原始的 C 语言基础数据类型,如 int 、float、 enum、struct 和 NSArray 中的随机指针。同时,你也不能在 NSArray 中存储 nil (对象的零值或 NULL 值)。有很多种方法可以避开这些限制。 可以通过类方法 arrayWithObjects: 创建一个新的 NSAr
2015-06-20 09:33:57 936
原创 Objective-C----继承
一、概念:面向对象提供了继承语法,能大大简化代码。把公共的方法和实例变量写在父类里,子类字需要写自己独有的实例变量和方法即可。继承既能保证类的完整,又能简化代码。二、继承的特点:OC 中只允许单继承。 没有父类的类成为根类,OC中的根类是NSObject(祖宗)。 继承的内容:所有实例变量和方法。 如果子类不满意父类方法的实现,可以重写(overwrite)父类的方法。三、方法调度机制:当代码
2015-06-19 15:17:52 707
原创 Objective-C----@class 和 #import
@class 和 #import说明: @class 创建了一个前向引用。这是在告诉编译器:“相信我。以后你自然会知道这个类到底是什么,但是现在,你知道这些足矣。” 如果有循环依赖关系,@class 也很有用。即 A 类使用 B 类, B 类也使用 A 类。如果试图通过 #import 语句让这两个类互相引用,那么就会出现编译错误。但是如果在 A.h 文件中使用 @class B,在 B.h 中
2015-06-19 11:51:27 710
原创 Objective-C----初识Objective-C
初识Objective-CObjective-C刚诞生的时候,扩展名.m代表message,它指的是Objective-C的一个主要特性。NSLog( @“ %d ” , 12 ); // 可以输出 12printf ( “ %d\n ” , 23 ); // 可以输出23NSLog( @“ %s “ , “abc” ) ; // 可以输出 字符串 abcprintf ( “%s”
2015-06-19 11:39:00 607
原创 Objective-C----防御式编程
优点:防御式编程能够在开发早期发现错误。例代码:下面是相关存取方法的实现代码。- (void)setTire:(Tire *)tire atIndex:(int)index { if (index < 0 || index > 3) { NSLog (@"bad index (%d) in setTire:atIndex:", index); exit (1);
2015-06-19 11:05:48 718
原创 Objective-C----setter 和 getter
命名规范:对于存取方法的命名,Cocoa有自己的惯例。在为自己的类编写存取方法时,应当遵守这些惯例,这样你和其他人读代码时才不会感到困惑。 setter 方法根据它所更改的属性的名称来命名,并加上前缀set。下面是几个setter方法的名称:setEngine:、setStringValue:、setFont:、setFillColor:和setTextLineHeight:。 getter 方
2015-06-19 10:44:18 1572
原创 Objective-C----NSLog( )
概念NSLog()可以使用 %@ 格式说明符来输出对象。NSLog()处理%@说明符时,会询问参数列表中相应的对象以得到这个对象的描述。从技术上来讲,也就是NSLog()给这个对象发送了description消息,然后对象的description方法生成一个NSString并将其返回。NSLog()就会在输出结果中包含这个字符串。在类中提供description方法就可以自定义NSLog()会如何输
2015-06-19 10:22:24 698
原创 GetAdaptersInof获取本地连接的网卡信息,排除无线网卡和虚拟网卡
/*只获取本地连接的网卡信息,并不获取无线网卡和虚拟网卡的信息,要想获取无线网卡的信息,需把if(strstr(pAdapter->Description,"PCI")>0 && pAdapter- >Type==MIB_IF_TYPE_ETHERNET)改成if(strstr(pAdapter->Type==71),若要获取虚拟网卡的信息,需把if(strstr(pAdapter->Descrip
2015-06-19 10:06:45 2087
原创 Objective-C----init
init在 init 方法中,下面这行代码看起来有些奇怪。if (self = [super init])下面我们来解释这行代码的意思。为了让超类(在这里是NSObject)将所有需要的初始化工作一次性完成,你需要调用 [super init]。init 方法返回值(id类型数据,即泛型对象指针)就是被初始化的对象。 将 [super init] 返回的结果赋给 self 是 Objective
2015-06-18 15:30:22 696
原创 Objective-C----new
使用new创建对象时,系统其实在后台执行了两个步骤: 第一步:为对象分配内存,即对象获得一个用来存放实例变量的内存块; 第二部:自动调用 init 方法,使对象进入可用状态。注:alloc 的内部实现用的是 new。@implementation Car- (id) init{ if (self = [super init]) { engine = [Engine new
2015-06-18 15:24:08 610
原创 Objective-C----实例变量
一、实例变量的可见度(访问权限)二、方法OC中的⽅方法分两种:类⽅方法和实例⽅方法。类⽅方法:只能类使⽤用,例如:+(id)alloc 注:类⽅方法中不能使⽤用 实例变量实例⽅方法:只能对象使⽤用,例如: -(void)sayHi 三、直接贴代码//// main.m// OC_Practice_02//// Created by on 15/3/31.// Copyright
2015-06-18 15:19:23 709
原创 C语言----函数
一、定义:有特定功能的代码片段的集合体,我们成为 函数。二、返回值:1、函数的返回值称为 函数的值,只能通过 return 语句返回给主调函数; 2、一个函数只能有一个返回值; 3、函数即使没有返回值也可以使用 return 来结束函数的执行,回到 主调函数; 4、return 后面的语句 不再执行。三、形参、实参1、形参 出现在函数的定义中,以 假名字 来表示函数调用时需要提供的
2015-06-17 16:51:32 603
原创 C语言----多维数组
一、定义: 数组下标在2个以上时,改数组称为多维数组。 (所谓多维数组是多个一维数组的嵌套。)二、三维数组遍历:for ( int i = 0 ; i < 层数 ;i ++){ for ( int j = 0 ; j < 行数 ;j ++) { for ( int k = 0 ; k < 列数 ;k ++) {
2015-06-17 16:47:24 927
原创 C语言----函数指针
回调函数1、 函数指针 做参数 2、 回调过程 例代码//// main.m// C_Project_12//// Created by on 15/3/26.// Copyright (c) 2015年 . All rights reserved.//#import <Foundation/Foundation.h>//课堂练习题:写一函数查找成绩90分以上的学员,使
2015-06-17 16:44:57 658
原创 C语言----文件读取
一下代码在 Xcode 中实现://// main.m// C_Homework_10//// Created by on 15/3/25.// Copyright (c) 2015年 . All rights reserved.//#import <Foundation/Foundation.h>void readFileBytes(const char *name);i
2015-06-17 16:34:07 1232
原创 C语言----内存区划分
一、栈区、堆区、静态区(全局区)、常量区、代码区:1、栈:由系统根据数据类型所占字节数在此区域开辟存储空间,使用结束后,再由系统释放。 (系统分配,系统释放)2、堆、手动分配,手动释放。3、静态、 static:直到程序运行结束 才会被 释放。4、常量占用内存,只读状态,决不可修改。5、代码、所有的语句编译后会生成CPU指令存储在代码区。二、malloc、calloc、realloc
2015-06-17 16:20:43 758
原创 C语言----指针
一、声明int *p ; // ( int * )( p )二、野指针—-避免方法1)指针变量一定要初始化为NULL,因为任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的。 2)当指针p指向的内存空间释放时,没有设置指针p的值为NULL。delete和free只是把内存空间释放了,但是并没有将指针p的值赋为NULL。通常判断一个指针是否合法,都是使用if语句测试该指针
2015-06-17 16:16:11 726
原创 C语言----宏
一、带参宏(带参数的宏定义)#define mul ( A, B ) ( ( A ) * ( B ) ) // 注意: ‘()’ 不能少,少了 会出问题例:如果 不加 ‘ ()’ ,#define mul ( A, B ) ( A* B )那么 mul ( 3-2, 5-1 ) 就会成为: 3 - 2 * 5 - 1 这样
2015-06-17 15:51:37 580
原创 C语言----结构体
一、结构体赋值数组本身是不能直接相互赋值的; 可以通过把 数组 放在 结构体里 ,用结构体去赋值,因为结构体是可以相互赋值的。二、 结构体内存对齐1、以最⼤大成员变量类型所占空间的最小整数倍为分配单位; 2、按结构体成员声明顺序自上而下分配; 3、尽可能的减少碎片空间。注:分配空间不足以存储成员变量时,分配新的空间单位。三、例代码//// main.m// C_Project_07/
2015-06-17 10:48:15 490
原创 C语言----求“鞍点”
求 “鞍点”在 Xcode 上用 C语言实现的:#import <Foundation/Foundation.h>int main(int argc, const char * argv[]){// 求鞍点 int array[3][3] = {0}; //生成数组元素 for ( int i = 0; i < 3; i++ ) { for ( in
2015-06-17 10:36:47 2599
原创 C语言----字符数组
一、知识点字符串数组 本质上 是二维字符数组 字符串数组元素访问: 1、访问某个字符串:数组名 [ 第一维下表 ] 2、访问某个字符:数组名 [ 第一维下标 ] [ 第二维下标 ]例:随机输入四个人名,并对这四个人名按降序排序。#import <Foundation/Foundation.h>int main(int argc, const char * argv[]){
2015-06-17 10:32:19 531
原创 不能修改“System Roots”钥匙串 要更改根证书是否会被信任,请在“钥匙串访问”中打开它,然后修改它的信任设置
问题:在做 ios 开发 安装 根证书时 遇到如下提示: 不能修改“System Roots”钥匙串 要更改根证书是否会被信任,请在“钥匙串访问”中打开它,然后修改它的信任设置解决方法:1、点击“钥匙串访问”页面左侧“种类”中的“登陆”或“login”,然后把药安装的 根证书 拖进去,就行啦。 2、若“种类”中没有“登陆”或“login”,如下图一样: 解决方法: 就会出现
2015-06-11 10:49:03 32193 1
InstallWizardForVC2008/2010Express.js/InstallWizardForVC2008/2010.js
2014-09-11
MSVCR100各种版本的都有
2014-04-02
GetAdaptersInof获取本地连接网卡信息,排除无线网卡和虚拟网卡
2014-03-23
Network Programming for Microsoft Windows
2014-02-19
Everything_1.2.1.413b.zip
2013-11-09
Objective-C编程之道:IOS设计模式解析
2017-02-24
从C++到Objective-C
2015-04-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人