- 博客(28)
- 收藏
- 关注
原创 iOS Xcode 的汇编模式切换
联系人:石虎 QQ:1224614774 昵称: 嗡嘛呢叭咪哄 QQ群:807236138 群称: iOS 技术交流学习群 一、概念 1.汇编指令 : 模拟器上运行的是Intel指令,而真机上运行的是arm指令, 2.每条汇编指令的格式总是由: 操作码, 操作数1,操作数2,操作数3组成。 操作数要么就是常数,要么就是寄存储...
2018-02-28 18:02:36 2417
原创 各个排序算法的时间复杂度和稳定性,快排的原理
//联系人:石虎QQ:1224614774昵称:嗡嘛呢叭咪哄 QQ群:807236138 群称:iOS 技术交流学习群排序图表:一、插入排序 每次将一个待排序的数据,跟前面已经有序的序列的数字一一比较找到自己合适的位置,插入到序列中,直到全部数据插入完成。二...
2018-02-27 14:11:12 37304 6
原创 iOS 静态库打包(Xcode9.1)
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄 目录 /** 一、概念 什么是库 库的分类 静态库和动态库的存在形式和使用区别 二、打包静态库 三. 配置工程环境 四、终端查看静态库所支持的架构 */ 一、概念1、 什么是库? 所谓库就是程序代码的集合,是共享程序代码的一种方式...
2018-02-26 10:45:40 780
原创 iOS Mac下SVN环境的配置方法
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄友情提示:特别轻松的配置 svn一、创建代码仓库:1.打开终端,输入创建一个仓库的指令,如:svnadmin create /Users/svn/mycode 二、配置svn的用户权限:2.权限配置文件在 /svn/mycode/conf目录下; 打开svnserve.conf,主要配置项前面的“#”和空格都去掉; 如...
2018-02-25 22:31:14 2391
原创 iOS 最新App图标和启动画面尺寸
联系人:石虎 QQ:1224614774 昵称: 嗡嘛呢叭咪哄 QQ群:807236138 群称: iOS 技术交流学习群 一、概念:iOS 最新App图标和启动画面尺寸(补充-2) https://blog.csdn.net/shihuboke/article/details/802687351. 桌面图标 (app i...
2018-02-24 12:02:46 31114
原创 C++ 对象模型~内存布局
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念:1.没有继承情况,vptr存放在对象的开始位置,以下是Base1的内存布局 m_iData :1002.单继承的情况下,对象只有一个vptr,它存放在对象的开始位置,派生类子对象在父类子对象的最后面,以下是D1的内存布局 B1:: m_iData : 100 B1::vptr : 4294800 B2:...
2018-02-23 10:14:53 306
原创 C++ 虚继承与虚基类
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.定义:在多重继承下,一个基类可以在派生层次中出现多次。(派生类对象中可能出现多个基类对象)在 C++ 中,通过使用虚继承解决这类问题。 * 虚继承是一种机制,类通过虚继承指出它希望共享其虚基类的状态。 * 在虚继承下,对给定虚基类,无论该类在派生层次中作为虚基类出现多少次,只继承一个共享的基类子对象。 * 共享的基类子对象...
2018-02-22 15:59:38 525
原创 C++ 多重继承和构造
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、多重继承: 定义:派生类继承多个基类,派生类为每个基类(显式或隐式地)指定了访问级别——public、protected 或 private。 class Panda : public Bear, public Endangered { }二、构造: 1. 派生类的对象包含每个基类的基类子对象。 2. 派生类...
2018-02-21 23:32:15 721
原创 C++ 纯虚函数
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念* 定义: 在很多情况下,基类本身生成对象是不合情理的。* 为了解决这个问题,方便使用类的多态性,引入了纯虚函数的概念,将函数定义为纯虚函数(方法:virtual ReturnType Function()= 0;)纯虚函数不能再在基类中实现,编译器要求在派生类中必须予以重写以实现多态性。* 同时含有纯虚拟函数的类称为抽象类,...
2018-02-20 21:56:26 582
原创 C++ 虚函数表
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.多态是由虚函数实现的,而虚函数主要是通过虚函数表(V-Table)来实现的。 如果一个类中包含虚函数(virtual修饰的函数),那么这个类就会包含一张虚函数表,虚函数表存储的每一项是一个虚函数的地址。 如下图: 这个类的每一个对象都会包含一个虚指针(虚指针存在于对象实例地址的最前面,保证虚函数表有最高的性...
2018-02-19 10:01:31 415
原创 C++ 重载、重写、隐藏的区别
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.Overload(重载): 在C++程序中,可以将语义、功能相似的几个函数用同一个名字表示,但参数或返回值不同(包括类型、顺序不同),即函数重载。(1)相同的范围(在同一个类中);(2)函数名字相同;(3)参数不同;(4)virtual 关键字可有可无。2.Override(覆盖):是指派生类函数覆盖基类函数,特征是: (...
2018-02-18 18:40:45 281
原创 C++ 什么是多态,多态的用途
联系人:石虎 QQ:1224614774 昵称: 嗡嘛呢叭咪哄 QQ群:807236138 群称: iOS 技术交流学习群一、概念1. 定义:“一个接口,多种方法”,程序在运行时才决定调用的函数。2. 实现:C++多态性主要是通过虚函数实现的,虚函数允许子类重写override(注意和overload的区别,overload是重...
2018-02-17 23:29:52 8278 1
原创 iOS 单例设计模式
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念 单例模式(Singleton)也叫单态模式,是设计模式中最为简单的一种模式1.单例的作用 整个应用或系统只能有该类的一个实例,即是在整个项目中,这个类的对象只能被初始化一次。单例类保证了应用程序的生命周期中有且仅有一个该类的实例对象,而且易于外界访问。2.iOS单例模式应用场景 单例模式泛应用于某些需要全局共享的资源...
2018-02-16 23:53:08 363
原创 iOS WeakSelf宏的进化
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.防止如block的循环引用时,会使用__weak关键字做如下定义: __weak typeof(self) weakSelf = self; 使用: [weakSelf addSubViews];2.写成宏的方法: #define WeakSelf __weak typeof(self) weakSelf ...
2018-02-15 23:38:51 788
原创 iOS mysql的数据库引擎以及区别
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.ISAM含义: ISAM是一个定义明确且历经时间考验的数据表格管理方法,它在设计之时就考虑到数据库被查询的次数要远大于更新的次数。 因此,ISAM执行读取操作的速度很快,而且不占用大量的内存和存储资源。 ISAM的两个主要不足之处在于,它不支持事务处理,也不能够容错:如果你的硬盘崩溃了,那么数据文件就无法恢复了。...
2018-02-14 22:43:39 319
原创 C++ virtual 函数
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.是不是一个父类写了一个virtual 函数,如果子类覆盖它的函数不加virtual ,也能实现多态? virtual修饰符会被隐形继承的。 private 也被集成,只事派生类没有访问权限而已 virtual可加可不加 子类的空间里有父类的所有变量(static除外) 同一个函数只存在一个实体(inline除外)...
2018-02-13 20:33:04 602
原创 iOS 数据包
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.数据包含义: 宽泛意义的数据包:每一个数据包都包含"标头"和"数据"两个部分."标头"包含本数据包的一些说明."数据"则是本数据包的内容.2.细分数据包: 1)应用程序数据包: 标头部分规定应用程序的数据格式.数据部分传输具体的数据内容.*** ——对应上图中的数据!*** 2) TCP/UDP数据包:标头部分包...
2018-02-12 09:39:33 518
原创 C++ const 符号常量写法区别
联系人:石虎 QQ:1224614774 昵称: 嗡嘛呢叭咪哄 QQ群:807236138 群称: iOS 技术交流学习群一、概念1.const写法 (1)const char *p (2)char const *p (3)char * const p二、const写法区别 如果const位于 * 的左侧,则...
2018-02-11 11:06:14 1837
原创 C++ 结构体struct和共同体union的区别
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.定义: 结构体struct:把不同类型的数据组合成一个整体,自定义类型。 共同体union: 使几个不同类型的变量共同占用一段内存。2.地址: struct和union都有内存对齐,结构体的内存布局依赖于CPU、操作系统、编译器及编译时的对齐选项。二、关于内存对齐,四个重要的基本概念:1.数据类型自身的对齐值: ...
2018-02-10 10:31:37 5253
原创 C++ Makefile简介
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、Makefile概述: 1.对很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作, 2.做好一个professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件...
2018-02-09 12:00:01 1158
原创 C++ static 和const 的作用
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄 /** 问题1:static和const的作用; 问题2:类里面static和const可以同时修饰成员函数吗 */一、static的作用:对变量:1.局部变量: 在局部变量之前加上关键字static,局部变量就被定义成为一个局部静态变量。 1)内存中的位置:静态存储区 2)初始化:未经初始化的全局静...
2018-02-08 10:29:08 2137
原创 C++ 面试题~Windows内存管理的方法
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、虚拟内存的概念 当程序运行时需要从内存中读出这段程序的代码。代码的位置必须在物理内存中才能被运行,由于现在的操作系统中有非常多的程序运行着,内存中不能够完全放下,所以引出了虚拟内存的概念。把哪些不常用的程序片断就放入虚拟内存,当需要用到它的时候在load入主存(物理内存)中。这个就是内存管理所要
2018-02-07 10:16:41 580
原创 C++ 函数调用和系统调用的区别
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.什么是系统调用?(常见Linux及其分类表) 所谓系统调用就是用户在程序中调用操作系统所提供的一个子功能,也就是系统API,系统调用可以被看做特殊的公共子程序。系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(如存储分配、进行I/O传输及管理文件等)
2018-02-06 10:59:27 5619
原创 iOS 模拟内存优化
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念 low-memory 处理思路 通常一个应用程序会包含多个view controllers,当从view跳转到另一个view时,之前的view只是不可见状态,并不会立即被清理掉,而是保存在内存中,以便下一次的快速显现。但是如果应用程序接收到系统发出的low-memory war
2018-02-05 13:14:32 304
原创 iOS 真机模拟内存警告
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念1.内存警告原理 *iphone下每个app可用的内存是被限制的,如果一个app使用的内存超过20M,则系统会向该app发送Memory Warning消息。收到此消息后,app必须正确处理,否则可能出错或者出现内存泄露。 *app收到Memory W
2018-02-04 10:41:57 2364 1
原创 iOS 使用Xcode9打开Winnows下C文件中文乱码问题解决
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、概念:1.文字描述 Xcode菜单:View --> Utilities --> Show Utilities (option + command + 0)在右侧的Text Settings下的Text Encoding中选择Simplified Chinese (Mac O
2018-02-03 10:55:53 1109
原创 Xcode9 导入框架出现Use Legacy Swift Language Version的报错
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、使用cocopod导入第三方swift包后,编译报以下错误:1.文字显示: The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported valuefor target
2018-02-02 10:40:45 1009
原创 iOS TCP为什么要三次握手,TCP为什么可靠, TCP原理
//联系人:石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄一、为什么不能两次握手: 答:(防止已失效的连接请求又传送到服务器端,因而产生错误) 假设:改为两次握手,client端发送的一个连接请求在服务器滞留了,这个连接请求是无效的,client已经是closed的状态了,而服务器认为client想要建立一个新的连接,于是向client发送确认
2018-02-01 10:24:34 1659
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人