RunTime简称运行时。就是系统在运行的时候的一些机制,其中最主要的是消息机制。对于C语言,函数的调用在编译的时候会决定调用哪个函数( C语言的函数调用请看这里 )。编译完成之后直接顺序执行,无任何二义性。OC的函数调用成为消息发送。属于动态调用过程。在编译的时候并不能决定真正调用哪个函数(事实证 ...
分类:
其他好文 时间:
2016-06-01 01:30:16
阅读次数:
141
如果你的代码所在的进程中有多个线程在同时运行,而这些线程可能会同时运行这段代码。如果每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线程安全的。 或者说:一个类或者程序所提供的接口对于线程来说是原子操作或者多个线程之间的切换不会导致该接口的执行结果存在二义性,也就是 ...
分类:
编程语言 时间:
2016-05-22 13:59:52
阅读次数:
203
一.什么是算法:解决问题的具体方法和步骤 二.算法的基本特征 1.有穷性:一个算法必须在执行有限个操作步骤后终止。 2.确定性:算法中每一步的含义必须是确切的,不可出现任何二义性。 3.有效性:算法中的每一步操作都应该能有效执行,一个不可执行的操作是无效的。例如,一个数被0除的操作就是无效的,应当避 ...
分类:
编程语言 时间:
2016-05-16 17:25:01
阅读次数:
281
析构函数主要作用是对数据成员初始化。
1派生类的构造函数
派生类的构造函数定义的一般形式为:
派生类名::派生类名(基类所需形参,本类成员所需形参):基类1(基类1
参数表),基类2(基类2
参数表),···,基类n(基类n
参数表),对象成员1(对象1
参数表),对象成员2(对象2
参数表),···,对象成员m(对象m
参数表){
...
分类:
其他好文 时间:
2016-05-13 01:03:32
阅读次数:
162
算法:算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。为什么把数据结构和算法一起说?
想想罗密欧与朱丽叶,梁山伯和祝英台,少了一个你总会觉得奇怪吧。算法的五个基本特性:
输入:有0个或多个输入;
输出:有1个或多个输出;
有穷性:步骤有限,不能无穷循环下去;
确定性:有确定的含义,不能出现二义性;
可行性:每一步都能通过有限次数完成。
算法设计的要...
分类:
编程语言 时间:
2016-05-12 16:18:41
阅读次数:
161
模板与泛型编程
--重载与函数模板
引言:
函数模板可以重载:可以定义有相同名字但参数数目或类型不同的多个函数模板,也可以定义与函数模板有相同名字的普通非模板函数。
但是,声明一组重载函数模板不保证可以成功调用它们,重载的函数模板可能会导致二义性。
一、函数匹配与函数模板
如果重载函数中既有普通函数又有函数模板,确定函数调用的步骤如下:
1...
分类:
编程语言 时间:
2016-05-12 15:33:25
阅读次数:
230
现代软件产业经过了几十年的发展,单枪匹马完成一个软件显然已成为历史,现在的软件都是由合作小组或者大型合作单位一同完成的。两个人一起编辑代码,必须的每个人都能看懂对方的代码。 因此必需得给出一个基准线,要有基本的代码规范和设计规范。首先,不同代码风格也有一个基本的准则,那就是简明、易读、无二义性。其他 ...
分类:
其他好文 时间:
2016-05-09 20:22:58
阅读次数:
112
虚继承节省空间,解决二义性问题。虚拟继承是多重继承中特有的概念。虚拟基类是为解决多重继承而出现的。如下图所示。类D继承自类B1、B2,而类B1、B2都继承自类A,因此出现如右图所示的局面(非虚基类)。为了节省内存空间,可以将B1、B2对A的继承定义为虚拟继承,而A就成了虚..
分类:
其他好文 时间:
2016-04-26 22:23:12
阅读次数:
240
1.概括在CPlusPlus多继承编程中时常遇到这样一个问题--若子类实现多个基类或接口继承,多基类或接口中存在成员名相同,在客户与实现类之间的通信时编译器报错“不能这样使用,会产生二义性”由于这个问题的解决方法很多。比如说,可以把相同的成员名给改过来。但是,从专业的角..
分类:
编程语言 时间:
2016-04-23 23:19:17
阅读次数:
315
知识树系统的需求验证 需求验证的目的:需求是完整的和高质量的;用户、技术人员以及客户对需求的看法是一致的;确保需求符合需求陈述的良好特征(完整的,正确的,灵活的,必要的,具有优先级的、无二义性及可以验证的) 需求验证的方式:由于我们既是用户又是技术人员,所以由本组成员检查文件,组织会议进行讨论 需求 ...
分类:
其他好文 时间:
2016-04-23 21:10:41
阅读次数:
126