术语表 第 6 章 函数 二义性调用(ambiguous call): 是一种编译时发生的错误,造成二义性调用的原因时在函数匹配时两个或多个函数提供的匹配一样好,编译器找不到唯一的最佳匹配。 实参(argument): 函数调用时提供的值,用于初始化函数的形参。   ...
分类:
编程语言 时间:
2019-09-04 19:22:38
阅读次数:
104
线程安全 可重入/不可重入:针对函数,多个执行流中是否可以同时进入函数运行而不出现问题 概念:指多个线程同时处理操作临界资源而不会出现数据二义性,则称是线程安全的 二义性:在线程中是否对临界资源进行了非原子操作 如何实现线程安全: 同步(保证合理):临界资源的合理访问(时序可控) 互斥(保证安全): ...
分类:
编程语言 时间:
2019-09-02 09:29:48
阅读次数:
112
【算法之美】数据结构+算法=程序。 前言 数据结构只是静态的描述了数据元素之间的关系。高效的程序需要在数据结构的基础上设计和选择算法。 高效的程序=恰当的数据结构+合适的算法 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策 ...
分类:
编程语言 时间:
2019-08-25 00:46:26
阅读次数:
129
创建对象分为四步: 1.分配对象空间,并将对象成员变量初始化为0或非空 2.执行属性值的显式初始化 3.执行构造方法 4.返回对象的地址给相关变量 this关键字: this的本质是“创建好的对象的地址”,在构造方法中使用this代表“当前对象”。 this最常见的用法: 1.在程序产生二义性之处, ...
分类:
其他好文 时间:
2019-08-10 14:25:29
阅读次数:
80
针对分布式架构下的数据一致性,大家也许会问这样的问题:跨系统间分布式事务如何解决?系统内多个服务的分布式事务如何解决?一个服务内多个数据源/数据库的分布式事务如何解决?……这些问题大家是很容易理解的,但是由于术语不准确,所以解释起来会有二义性,所以先要统一语言或者术语,也就是统一概念: 域是一个虚拟 ...
分类:
其他好文 时间:
2019-06-19 13:37:41
阅读次数:
115
针对分布式架构下的数据一致性,大家也许会问这样的问题:跨系统间分布式事务如何解决?系统内多个服务的分布式事务如何解决?一个服务内多个数据源/数据库的分布式事务如何解决?……这些问题大家是很容易理解的,但是由于术语不准确,所以解释起来会有二义性,所以先要统一语言或者术语,也就是统一概念: 域是一个虚拟 ...
分类:
其他好文 时间:
2019-06-15 20:19:52
阅读次数:
139
1. 默认参数的规则 默认值定义 C++支持函数参数带默认值。这里所谓的默认值,指的是在调用函数时,可以不指定某些参数,编译器会自动把默认值传递到函数调用中。 默认值位置 指定默认值的参数必须位于形参列表最右端,从右往左。否则会出现二义性,编译器无法处理。 默认值设置 默认值可以在函数声明或函数定义 ...
分类:
编程语言 时间:
2019-04-12 09:15:17
阅读次数:
172
1.尽量避免使用null 1.1 不要在Set中使用null或将null当做map的键值 1.2 map中的值应该都不为null,因为通过get方法可能有二义性,可以对值为空的单独创建一个集合。 Guava中用Optional代表T类型的引用,用引用存在和引用缺失来表示null与非null(不包含n ...
分类:
其他好文 时间:
2019-03-07 14:07:02
阅读次数:
142
一、概念 一个类有多个直接基类的继承关系称为多继承,多继承会引入其他问题: 1.祖先类obj中有一个变量a,然后有P1和P2两个类分别都继承obj类,再有C1类多继承P1和P2时,定义的对象使用变量a时,编译不知道引用P1的还是P2的变量a,会编译报错(变量a的二义性),可以使用虚继承解决此问题, ...
分类:
其他好文 时间:
2019-02-23 11:03:53
阅读次数:
201
线程安全:多个线程之间的切换不会导致该接口的执行结果存在二义性。 分布式一致性:数据的多份副本,当对一个副本进行修改时,其它的副本的值也要与其保持一致。 数据库一致性:事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。保证数据库一致性是指当事务完成时,必须使所有数据都具有一致的状态。 ...
分类:
其他好文 时间:
2019-01-25 18:45:22
阅读次数:
194