05 2020 档案
摘要:看书看到这个地方,使用&运算计算hash对应的下标。 两个数&运算得到小于等于两个数中最小的值,位运算比%运算效率更高。
阅读全文
摘要:涉及到以下汇编指令: pushl: 入栈 ebp指向栈底 esp指向栈顶 入栈时只需要将esp下移, 将入栈的值放入esp指向的地址,如下图所示: popl: 出栈 先将栈顶的数据保存,再将esp上移 call:顾名思义,调用一个函数 调用一个函数需要将当前执行到的指令位置(eip寄存器的值)保存,
阅读全文
摘要:函数重载是一种特殊情况,C++允许在同一作用域中声明几个类似的同名函数,这些同名函数的形参列表(参数个数,类型,顺序)必须不同,常用来处理实现功能类似数据类型不同的问题。 为了实现函数重载的功能,函数名就不能再作为一个函数的唯一标识,而是使用了name-mangling方法将函数名转化为了一个独一无
阅读全文
摘要:不要将函数的返回值设为&&, std::string &&get(){ std::string s = "str";return std::move(s); } 代码中返回的字符串s在函数返回时就已经离开作用域调用析构函数,函数的得到的返回值其实是一个野指针。
阅读全文
摘要:使用gettimeofday(),没有系统调用的开销。 std::string getTime(void) { timeval tv; tm * time; std::stringstream ss; if(gettimeofday(&tv, nullptr) == -1){ throw errno
阅读全文

浙公网安备 33010602011771号