摘要: map和multimap默认都是按照key进行排序的用一个map统计出每个单词出现的次数,但是此时map是按照字符串排序于是我们再用一个multimap来把存储map中的内容,这是的key是int 就会按照单词出现的次数来排序也就实现了我们的目标这里之所以用multimap来临时存储是因为multimap可以存在相同的key而map是的key必须唯一 1 map word_cnt; 2 multimap ans; 3 ifstream fin("txt.txt"); 4 char p[256]; 5 while(!fin.eof()) 6 { 7 ... 阅读全文
posted @ 2014-03-16 02:00 0弓虽 阅读(611) 评论(0) 推荐(0) 编辑
摘要: vi/vim 命令手册本手册介绍了 vi/vim 编辑器的主要功能。为了便于查找,这里一并给出了命令和它们的定制参数。在使用这个手册之前,必须注意以下几点: ●很多命令可以与重复因子一起使用(vi); ●vim(不是vi)把一个区域(region)定义为一个连续的文本块,许多命令与文本块有关; 一个区域可以用v定义,后面跟一个光标移动命令; ●用[Ctrl+l]组合键可以清除并重画屏幕; ●:set命令用来定制编辑环境。移动光标命令功能h光标左移l(或空格键)光标右移k(或[Ctrl+p])光标上移j(或[Ctrl+n])光标下移[Ctrl+f]向前翻页[Ctrl+b]向后翻页[Ctrl+d] 阅读全文
posted @ 2013-12-13 15:24 0弓虽 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 下面来看看虚基类对对象内存布局的影响。虚基类的主要作用就是在所有的派生类中,保留且仅保留一份虚基类的suboject。a. 一个虚基类的情况#include using namespace std;class Base{public: int base_member;};class Derived : publicvirtualBase {};int main(void){ Base b; Derived d; cout using namespace std;class Base1{public: int base1_member;};class Base2{public: int base 阅读全文
posted @ 2013-10-27 22:08 0弓虽 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 假定多层继承的各类之间的关系如下图。假定派生类不override基类的虚函数,即Base2不override Base1中声明的虚函数vfBase1(),Base3不override Base2中声明的虚函数vfBase2(),Derived不override Base3中声明的虚函数vfBase3()。 1 #include 2 3 using namespace std; 4 5 6 7 class Base1 8 9 {10 11 public:12 13 int m_base1;14 15 16 17 inline vi... 阅读全文
posted @ 2013-10-27 22:05 0弓虽 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 注意:关于内存对齐(memory alignment),请看关于内存对齐问题,后面将会用到。下面我们进行在普通继承(即非虚继承)时,派生类的指针转换到基类指针的情形研究。假定各类之间的关系如下图:代码如下:#include using namespace std;#pragma vtordisp(off)class Parent{public: int parent;};class Child : public Parent{public: int child;};class GrandChild : public Child{public: int grandchild;};int main 阅读全文
posted @ 2013-10-27 22:03 0弓虽 阅读(192) 评论(0) 推荐(0) 编辑