06 2021 档案

摘要:这个算法的意思是,对任何一个数 n,n & ( n − 1 ) 的结果是n的比特位最右端的1变为0的结果。例如,n = 12 , n − 1 = 11 , 11 & 12 = 8 n=12,n-1=11,11\&12=8n=12,n−1=11,11&12=8 n & (~n + 1)提取出整数n最后 阅读全文
posted @ 2021-06-24 10:27 PKICA 阅读(37) 评论(0) 推荐(0) 编辑
摘要:相信需要了解这方面的知识的小伙伴,已经基本对进程间通信和线程间通信有了一定了解。例如,进程间通信的机制之一:共享内存(在这里不做详解):多个进程可同时访问同一块内存。如果不对访问这块内存的临界区进行互斥或者同步,那么进程的运行很可能出现一些不可预知的错误和结果。 接下来我们了解三种常见的Linux下 阅读全文
posted @ 2021-06-16 10:24 PKICA 阅读(423) 评论(0) 推荐(0) 编辑
摘要:STL各种容器和算法的sort和find函数对重载运算符的调用情况: 1) 二叉树类型的容器的sort和find都会调用operator < 。 2)线性类型容器sort会调用operator <;线性容器使用std::find会调用operator ==。 需要非常注意重载<运算符,分类讨论要周全 阅读全文
posted @ 2021-06-11 16:53 PKICA 阅读(132) 评论(0) 推荐(0) 编辑
摘要:例1:int f(){ int i = 1; return i;}int main{ int r = f();}在例1的程序中,由于f()函数返回的是int类型,在函数结束时,要返回的值已经用于初始化函数的调用点的临时量了(假设为temp,在main(调用者)中),函数执行完后,i确实是被销毁了,但 阅读全文
posted @ 2021-06-03 15:28 PKICA 阅读(315) 评论(0) 推荐(0) 编辑
摘要:C++标准的规定:非常量的引用不能指向临时对象 为了防止给常量或临时变量(只有瞬间的生命周期)赋值(易产生bug),只许使用const引用之。 概括一下: 不能把临时对象作为实参传给非const引用。 例如: void conv(string &str) { } int main() { conv( 阅读全文
posted @ 2021-06-02 09:46 PKICA 阅读(119) 评论(0) 推荐(0) 编辑