c++11 新特性1 语言特性改进
C++11(C++0x)定稿已经满一年,主要的编译器这次跟进的速度也相当快,其中支持最好的要属最近声名雀起的llvm;作为一个历时8年之久的ISO标准,其诞生过程虽然过程很曲折,但是新标准对C++的改进和生产效率的提高无疑是大有益处的。
C++11(C++0x)定稿已经满一年,主要的编译器这次跟进的速度也相当快,其中支持最好的要属最近声名雀起的llvm;作为一个历时8年之久的ISO标准,其诞生过程虽然过程很曲折,但是新标准对C++的改进和生产效率的提高无疑是大有益处的。
传统的并发变成模型通过Mutex/Conditional Variable/Semaphore的设施来控制对共享资源的访问控制,但是这一经典模型使得编写正确高效的并发程序变得异常困难: 遗漏合适的锁保护导致的race condition 锁使用不当导致的死锁deadlock 异常未...
Parallel和Concurrency的目标是一致的,然后Parallel更强调在多个物理并发处理单元(至少从OS之上的角度看如此)存在的情况下,如何最大限度地利用现有的CPU资源提高程序的性能。传统的过程式编程思维范式中,所有的操作都是顺行串行的,多核并发处理往往意味着需要对代码做大幅度的修改;而Haskel...
随着基于CPU频率的摩尔定律的失效,现代的计算机体系都采用多核的方式提高处理能力,传统的编程思维和模式在多核时代则遭遇越来越多的问题;而函数式编程则在很大程度上提供了完全不同但是更为优雅的思路。作为纯函数式编程语言,Haskell的并发编程则和传统的过程式语言有着明显的不同。
vim之所有被成为Unix程序员的两大神器之一,就是因为其强大的插件机制;但是传统的插件更新方式需要手工去插件网站下载,并且释放到$HOME/.vim目录下边,然后解压缩,定制选项等等。这样的好处是,当你需要到一台新的机器上工作的时候,不管这台机器有没有你的插件,只需要将你自己的插件目录全部打包/复制/覆盖就好了。