首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
OC和C++的混用1
】的更多相关文章
OC和C++的混用1
//Objective-C类 /*在混用之前需要做一步非常重要的事:不是代码而是编译器选项,在做混合编译之前一定要把编译器的Compile Sources As选项改为Objective C++. 修改方法: target->BuildSetting->Apple LLVM compiler 4.0 - Language选项底下的Compile Sources As修改为:Objective C++*/ #import <Foundation/Foundation.h> class…
OC和C++的混用2
苹果的Objective-C编译器允许用户在同一个源文件里自由地混合使用C++和Objective-C,混编后的语言叫Objective-C++.有了它,你就可以在Objective-C应用程序中使用已有的C++类库. Objective-C和C++混编的要点 在 Objective-C++中,可以用C++代码调用方法也可以从Objective-C调用方法.在这两种语言里对象都是指针,可以在任何地方使用.例 如,C++类可以使用Objective-C对象的指针作为数据成员,Objective…
ios必须知道的事情
一. 学前提醒 其实iOS开发就是开发iPhone\iPad上的软件,而要想开发一款软件,首先要学习程序设计语言 iOS开发需要学习的主要程序设计语言有:C语言.C++.Objective-C,其中C++.Objective-C都是以C语言为基础,从C语言衍生出来的.因此,C语言是开发iOS软件的基础. 从现在开始,沉下心来学习传说中的C语言,学习它的语法 正式学习之前,先提醒一句:学习一门语言的语法是比较枯燥的事,很像是在学习1+1等于几,不可能在学习C语言语法过程中就能马上做出一些好看的iP…
C语言第二节概述
学前提醒 其实iOS开发就是开发iPhone\iPad上的软件,而要想开发一款软件,首先要学习程序设计语言 iOS开发需要学习的主要程序设计语言有:C语言.C++.Objective-C,其中C++.Objective-C都是以C语言为基础,从C语言衍生出来的.因此,C语言是开发iOS软件的基础. 从现在开始,沉下心来学习传说中的C语言,学习它的语法 正式学习之前,先提醒一句:学习一门语言的语法是比较枯燥的事,很像是在学习1+1等于几,不可能在学习C语言语法过程中就能马上做出一些好看的iPhon…
C语言入门:01.C语言概述
一.计算机和软件常识 1.计算机运行原理 (1)硬件基本组成:硬盘.内存.CPU (2)个部件之间的运作协调(下图)…
iOS_01_C语言简介
1.先学C语言的原因 * oc基于C. * oc 跟 C的思想和语法很多地方不太一样,而且OC能和C混用. * C 是所有编程语言中的经典,很多高级语言都是从C语言中衍生出来的,比如 C++,C#.Objective-C.java等. 2.简史 * c语言于1972年发明,首次使用是用于重写UINX操作系统(UNIX以前主要是用汇编语言写的,它奠定了操作系统的基础). * 随着UNIX操作系统的成功,C语言也得到了大幅度地推广,被先后使用到大.中.小.微型主机上,至今还是世界上最流行.使用最广泛…
swift 项目 oc 和 swift 混用,文件相互引用
创建swift工程后,如果后面想新建 oc 文件,这时会生成一个 AppName-Bridging-Header.h文件 一,在swift 文件中 1> 引用swift 文件 什么都不需要操作,在所有的swift 文件中,都是可以相互使用的 2> 引用oc 文件 AppName-Bridging-Header.h文件中把要引用的oc头文件导入,然后在所有的 swift 文件中都可以使用这个oc类 二,在oc文件中 1> 引用swift文件 swift 语言创建的工程会自动生成一个 Ap…
OC 面试问题汇总
OC 问题汇总: 1. 你如何理解 iOS 内存管理 1. new alloc copy retain这些对象我们都要主动的release或者 autorelease 2. 如果是类方法创建的对象,那么系统自动释放池自动在适当的 时候会帮我们 release 3. ARC xcode 自动会帮我们人工智能的添加 release autorelease 操 作 2. C语言里的数组与OC数组的区别 OC 数组是一个对象,有大量的方法,c 没有都需要自己写 C 数组删除是需要后面往前移动…
IOS学习之路--OC的基础知识
1.项目经验 2.基础问题 3.指南认识 4.解决思路 ios开发三大块: 1.Oc基础 2.CocoaTouch框架 3.Xcode使用 -------------------- CocoaTouch Media Core Services Core OS -------------------- System Framework OC的类声明,定义域 OC关键字定义为 @class O-C特有的语句for(..in ..)迭代循环,其他的条件和循环语句和c一样 OC对面向对象的概述 (1)…
我曾经的第一个OC程序
一. OC简介 C语言的基础上,增加了一层最小的面向对象语法 完全兼容C语言 可以在OC代码中混入C语言代码,甚至是C++代码 可以使用OC开发Mac OS X平台和iOS平台的应用程序 二. OC语法预览 1. 关键字 基本上所有关键字都是以@开头 下面列举一些常见的关键字,看一眼就行了,不用去翻资料查找它们的含义 @interface.@implementation.@end @public.@protected.@private.@selector @try.@catch.@throw.@…
OC语言前期准备
OC语言前期准备 一.OC简介 Oc语言在c语言的基础上,增加了一层最小的面向对象语法,完全兼容C语言,在OC代码中,可以混用c,甚至是c++代码. 可以使用OC开发mac osx平台和ios平台的应用程序. 拓展名:c语言-.c OC语言.-m 兼容C++.-mm 注:其实c语言和oc甚至任何一门语言都只是我们为了实现一些功能,达到一些效果而采用的工具,抛开语法的差别外,我想最重要的应该是在解决问题的时候考虑的角度和方法不一样而已,然而这也构成了学习一门语言的重要性. 二.语法预览 (一)…
iOS求职之OC面试题
1.Objective-C的类可以多重继承么?可以采用多个协议么? 答:不可以多重继承,可以采用多个协议. 2.#import和#include的区别是什么?#import<> 跟 #import""有什么区别? #import能避免头文件被重复包含的问题: 1) 一般来说,导入objective c的头文件时用#import,包含c/c++头文件时用#include. 使用include要注意重复引用的问题: class A,class B都引用了class C,clas…
iOS谋职之OC面试题
iOS谋职之OC面试题 iOS求职之OC面试题 IOS求职之OC面试题 1.Objective-C的类可以多重继承么?可以采用多个协议么? 答:不可以多重继承,可以采用多个协议. 2.#import和#include的区别是什么?#import<> 跟 #import""有什么区别? #import能避免头文件被重复包含的问题: 1) 一般来说,导入objective c的头文件时用#import,包含c/c++头文件时用#include. 使用include要注意重复引用…
OC修饰词 - 内存管理
<招聘一个靠谱的 iOS>—参考答案(上) 说明:面试题来源是微博@我就叫Sunny怎么了的这篇博文:<招聘一个靠谱的 iOS>,其中共55题,除第一题为纠错题外,其他54道均为简答题. 博文中给出了高质量的面试题,但是未给出答案,我尝试着总结了下答案,分两篇发:这是上篇 ,下一篇文章将发布在这里,会把剩余问题总结下,并且进行勘误,欢迎各位指正文中的错误.请持续关注微博@iOS程序犭袁.(答案未经出题者校对,如有纰漏,请向微博@iOS程序犭袁指正.) 出题者简介: 孙源(sunny…
面试时如何优雅的谈论OC
在面试中,我们经常会遇到一些原理性的问题,很常识但很难用通俗的语言解释清楚,这也是大部分业务级程序员经常失误的地方.虽然写了多年代码,但是核心思想不清,导致自己的后续发展受限,这是一个优秀的程序员和普通程序员的分水岭.要知其然而知其所以然!这也是整理这篇文章的初衷.文中结合了之前的一些文章,条理更清晰,内容更深入. 本文包括: OC的面向对象 运行时Runtime 运行循环RunLoop 事件响应链 引用计数 生命周期 与其他语言的区别 Objective-C 简称OC(下面以此代称),是在C语…
OC基础4:类和方法
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.类的声明(@interface)要放在以它自己名字命名的class.h文件中,而类的定义(@implementation)要放在相同名字的class.m文件中: 2.import本地文件和import系统文件的格式是不同的:导入本地文件要用双引号,导入系统文件要用< 和> :如下: #import <Foundation/Fou…
简单的OC程序
知识点 1.#import的用途: 1> 跟#include一样,拷贝文件的内容 2> 可以自动防止文件的内容被重复拷贝 2.#import <Foundation/NSObjCRuntime.h> NSObjCRuntime.h中有NSLog函数的声明 3.Foundation框架头文件的路径 1> 右击Xcode.app --> 显示包内容 2> Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/…
OC学习14——谓词
一.谓词的基本概念与使用 1.谓词(NSPredicate)用于定义一个逻辑条件,通过该条件可执行搜索或内存中的过滤操作.上一篇文章中介绍的集合都提供了使用谓词对集合进行过滤的方法.OC中的谓词操作是针对于数组类型的,他就好比数据库中的查询操作,数据源就是数组,这样的好处是我们不需要编写很多代码就可以去操作数组,同时也起到过滤的作用,我们可以编写简单的谓词语句,就可以从数组中过滤出我们想要的数据.非常方便.在Java中是没有这种技术的,但是有开源的框架已经实现了此功能. 2.创建谓词之后,如果谓…
OC语言(一)
一.概述 1.基本上所有关键词@开头 2.字符串以@开头,如@"Hello" 3.基本数据类型 char int float double BOOL(YES\NO) 4.空为nil 5.注释同C语音 6.屏幕输出 NSLog(@"String"); NSLog(@"age is %i",27); 7 C语言.连接是将所有.o文件连接起来 8.OC语言.m到.o再到.out 二.第一个OC程序,命令行编译 1.使用命令touch xx.m创建OC文…
李洪强iOS开发之OC语言前期准备
OC语言前期准备 一.OC简介 Oc语言在c语言的基础上,增加了一层最小的面向对象语法,完全兼容C语言,在OC代码中,可以混用c,甚至是c++代码. 可以使用OC开发mac osx平台和ios平台的应用程序. 拓展名:c语言-.c OC语言.-m 兼容C++.-mm 注:其实c语言和oc甚至任何一门语言都只是我们为了实现一些功能,达到一些效果而采用的工具,抛开语法的差别外,我想最重要的应该是在解决问题的时候考虑的角度和方法不一样而已,然而这也构成了学习一门语言的重要性. 二.语法预览 (一)…
oc面试攻略
原文出自:http://mobile.51cto.com/iphone-402619.htm 1.Object-C有多继承吗?没有的话用什么代替?cocoa 中所有的类都是NSObject 的子类 多继承在这里是用protocol 委托代理 来实现的 你不用去考虑繁琐的多继承 ,虚基类的概念. ood的多态特性 在 obj-c 中通过委托来实现. 2.Object-C有私有方法吗?私有变量呢? objective-c – 类里面的方法只有两种, 静态方法和实例方法. 这似乎就不是完整的面向对象了…
iOS代码规范(OC和Swift)
下面说下iOS的代码规范问题,如果大家觉得还不错,可以直接用到项目中,有不同意见 可以在下面讨论下. 相信很多人工作中最烦的就是代码不规范,命名不规范,曾经见过一个VC里有3个按钮被命名为button1.button2.button3,全文没有注释,去看代码逻辑才能知道这三个按钮的意思,我也是醉了! 下面的规范 有的定的比较死,大家可以根据自己团队的风格进行修改.该文章主要是OC的代码规范,有几个是Swift的规范. OC和Swift的代码规范如下: 一.VC生命周期 模块排列顺序 1. 注意…
用C语言封装OC对象(耐心阅读,非常重要)
用C语言封装OC对象(耐心阅读,非常重要) 本文的主要内容来自这里 前言 做iOS开发的朋友,对OC肯定非常了解,那么大家有没有想过OC中NSInteger,NSObject,NSString这些对象是怎么封装的?接下来我们就使用C语言来一部一部的实现这个封装. Object对象 首先我们先封装一个Object对象,我们来分析一下: 如果使用C来封装对象,我们就要用到结构体 每一个Object都有一个计数器,这个计数器用来管理对象的释放 提供一定的方法,能够retain, release, 获取…
嵌入式&iOS:回调函数(C)与block(OC)传 参/函数 对比
C的回调函数: callBack.h 1).声明一个doSomeThingCount函数,参数为一个(无返回值,1个int参数的)函数. void DSTCount(void(*CallBack)(int data_i32)); callBack.c 1).在doSomeThingCount函数,对运行次数自增,并调用参数--函数. void DSTCount(void(*CallBack)(int data_i32)) { static int numb = 0; numb++; (*Call…
嵌入式&iOS:回调函数(C)与block(OC)回调对比
学了OC的block,再写C的回调函数有点别扭,对比下区别,回忆记录下. C的回调函数: callBack.h 1).定义一个回调函数的参数数量.类型. typedef void (*CallBack)(int data_i32); 2).声明一个外部函数指针. extern CallBack myCallBackPTR; 3).声明一个doSomeThingCount函数 void DSTCount(void); callBack.c 1).定义一个函数指针 CallBack myCallBa…
WebViewJavascriptBridge源码探究--看OC和JS交互过程
今天把实现OC代码和JS代码交互的第三方库WebViewJavascriptBridge源码看了下,oc调用js方法我们是知道的,系统提供了stringByEvaluatingJavaScriptFromString函数 .现在主要是了解js是如何调用oc方法的,分享下探究过程. 源码不多,就一个头文件WebViewJavascriptBridge.h和实现文件WebViewJavascriptBridge.m, 和一个js文件,实现在js那边可以调用oc方法,也可以在oc里面调用js方法. 先…
OC泛型
OC泛型 泛型是程序设计语言的一种特性,他主要是为了限制类型的,比如OC中的数组,你可以限制他里面装的是NSString类型,泛型的话JAVA和C++都有的,大家要是对泛型不了解的话可以去百度一下. 泛型的基本格式 泛型声明格式:在声明类的时候,在类型后面 泛型定义格式:放在限制的类型后面 泛型的好处 提高程序员开发规范,让程序员一眼就可以看出该使用什么类型 限制类型,不允许装入其它的类型 可以使用点语法 泛型的实际操作 新建一个Person类,在里面定义一个可变的数组,然后在main.m中导入…
iOS学习15之OC集合
1.数组类 1> 回顾C语言数组 数组是一个有序的集合, 来存储相同数据类型的元素. 通过下标访问数组中的元素,下标从 0 开始. 2> 数组 数组是一个有序的集合,OC中的数组只能存储对象类型, 但是对于对象的类型没有限制. 通过 开始. NSArray:不可变数组,即:对象创建好以后,数组中元素个数不能发生变化. NSMutableArray:可变数组,即对象创建好以后,数组中的元素可以灵活进行增删改操作. 3> NSArray创建 ① 初始化方法 NSArray *names =…
JS 与OC 交互篇
完美记录交互 CSDN博客: (OC调用JS) http://blog.csdn.net/lwjok2007/article/details/47058101 (JS调用OC) http://blog.csdn.net/lwjok2007/article/details/47058795 补充::当页面被重新加载时候,js对象就需要刷新,,所以获取js对象就需要放在viewdidfinishLoad方法里面,否则在页面刷新之后就无法再使用JSContext对象…
OC中加载html5调用html方法和修改HTML5内容
1.利用webView控件加载本地html5或者网络上html5 2.设置控制器为webView的代理,遵守协议 3.实现代理方法webViewDidFinishLoad: 4.在代理方法中进行操作HTML5中的标签(CRUD→增删改查) 1.用类选择器或者id选择器或者标签选择器等选择要进行操作的标签 2.把选择好的标签转换成字符串 3.webView调用stringByEvaluatingJavaScriptFromString方法 应用场景:比如加载了网络上的百度链接,但是不想要它某个链接…