摘要:
1.条件概率 设A,B是两个事件,且P(B)>0,则在事件B发生的条件下,事件A发生的条件概率(conditional probability)为: P(A|B)=P(AB)/P(B) 分析:一般说到条件概率这一概念的时候,事件A和事件B都是同一实验下的不同的结果集合,事件A和事件B一般是有交集的, 阅读全文
摘要:
此外还有一个方法也是移除集合中的元素,且如果元素不存在,不会发生错误。格式如下所示: 阅读全文
摘要:
一、单引号和双引号 在Python中我们都知道单引号和双引号都可以用来表示一个字符串,比如 str1和str2是没有任何区别的。但是如果遇到需要转义字符的情况,来看单引号和双引号的版本。 单引号版本: 双引号版本: 单引号需要加 '\' 来让编译器判断目前是转义字符,而双引号方便了很多。 反之,如果 阅读全文
摘要:
一、伪共享的定义: 伪共享的非标准定义为:缓存系统中是以缓存行(cache line)为单位存储的,当多线程修改互相独立的变量时,如果这些变量共享同一个缓存行,就会无意中影响彼此的性能,这就是伪共享。 二、CPU缓存机制 CPU 缓存的百度百科定义为: CPU 缓存(Cache Memory)是位于 阅读全文
摘要:
阅读经典——《深入理解计算机系统》08 本文将介绍存储器层次结构以及局部性对程序性能的影响。 什么是存储器层次结构 这个词大家也许并不陌生,计算机中的存储器从寄存器、缓存到内存、硬盘,形成了一个层次结构。为什么不用单一的一种存储设备,比如只用硬盘呢?因为每一种存储设备都有它的优缺点,硬盘虽然存储空间 阅读全文
摘要:
两种方法1.全部读入内存 修改后重新存入文件2.边读边写到另一新建文件 要修改的部分修改后存入新建文件 其他部分原封不动写入写完删掉原先文件 将这个新的改为删掉那个的名字 方法一 读入内存修改 然后重新写入文件 方法二 逐行写入临时文件,遇到修改部分 修改后写入临时文件 完成后删除data.txt 阅读全文
摘要:
一、父类指针指向子类对象 首先,来看一段代码: 结论:删除子类指针,无论如何会自动调用祖先类的析构函数(即使祖先类的习惯函数不是虚拟的),虽然这是非正常情况,但还是记一下。 第二段代码: 结论:正常情况下,子类祖先类的析构函数都是虚拟的,这样删除祖先类指针、子类对象的时候,可正确同时调用子类和祖先类 阅读全文
摘要:
今天在头文件.h中初始化了一个数组和函数,在编译的时候提示这个数组和函数重新定义了,检查后发现,犯了一个致命的错误,在头文件中定义变量。。。 以下引用别人的一篇说明,警示自己。 C语言作为一种结构化的程序设计语言,在模块的划分上主要依据功能,C语言模块化程序设计需理解如下概念: (1) 模块即是一个 阅读全文
摘要:
在shell脚本设置了环境变量,如export LIBRARY_PATH=./lib/,执行了此脚本后, 在执行生成的可执行文件,提示错误 error while loading shared libraries: libww.so: cannot open shared object file: 阅读全文
摘要:
1. 虚函数和纯虚函数可以定义在同一个类(class)中,含有纯虚函数的类被称为抽象类(abstract class),而只含有虚函数的类(class)不能被称为抽象类(abstract class)。 2. 虚函数可以被直接使用,也可以被子类(sub class)重载以后以多态的形式调用,而纯虚函 阅读全文