
C++
文章平均质量分 83
pongba
这个作者很懒,什么都没留下…
展开
-
C++11(及现代C++风格)和快速迭代式开发
过去的一年我在微软亚洲研究院做输入法,我们的产品叫“英库拼音输入法” (下载Beta版),如果你用过“英库词典”(现已更名为必应词典),应该知道“英库”这个名字(实际上我们的核心开发团队也有很大一部分来源于英库团队的老成员)。整个项目是微软亚洲研究院的自然语言处理组、互联网搜索与挖掘组和我们创新工程中心,以及微软中国Office商务软件部(MODC)多组合作的结果。至于我们的输入法有哪些创新的fe原创 2012-08-27 14:22:15 · 71292 阅读 · 59 评论 -
争论C++前你应当知道什么(rev#1)
C++ - Myths and Fallacies (rev#1)或“争论C++前你应当知道什么” By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 最近写了一篇关于C++0x Concepts的文章,意料之外地引起了一场小规模口水仗。回各位帖子的同时,回想这些年C++社群的大小争论,觉得有必要把一些长久以来在C++争论中原创 2007-08-08 18:32:00 · 22048 阅读 · 66 评论 -
《C++0x漫谈》系列之:Concept, Concept!
《C++0x漫谈》系列之:Concept, Concept! By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 《C++0x漫谈》系列导言 这个系列其实早就想写了,断断续续关注C++0x也大约有两年余了,其间看着各个重要proposals一路review过来:rvalue-references,concepts,原创 2007-08-04 14:26:00 · 37343 阅读 · 91 评论 -
Generic Programming - What are you, anyway?
Generic Programming - What are you, anyway? 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) One Ring, to rule them all.- The Lord of the Rings The Word Around TownGoogle "generic pro原创 2007-07-29 19:03:00 · 10014 阅读 · 8 评论 -
《C++0x漫谈》系列之:右值引用(或“move语意与完美转发”)(下)
《C++0x漫谈》系列之:右值引用或“move语意与完美转发”(下) By 刘未鹏(pongba)刘言|C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 《C++0x漫谈》系列导言 这个系列其实早就想写了,断断续续关注C++0x也大约有两年余了,其间看着各个重要proposals一路review过来:rvalue-references、原创 2007-07-18 20:50:00 · 18370 阅读 · 11 评论 -
《C++0x漫谈》系列之:右值引用(或“move语意与完美转发”)(上)
《C++0x漫谈》系列之:右值引用或“move语意与完美转发”(上) By 刘未鹏(pongba)刘言|C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 《C++0x漫谈》系列导言 这个系列其实早就想写了,断断续续关注C++0x也大约有两年余了,其间看着各个重要proposals一路review过来:rvalue-references、原创 2007-07-10 16:09:00 · 30487 阅读 · 24 评论 -
《C++0x漫谈》系列之:多线程内存模型
《C++0x漫谈》系列之:多线程内存模型 By 刘未鹏(pongba)刘言|C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 《C++0x漫谈》系列导言 这个系列其实早就想写了,断断续续关注C++0x也大约有两年余了,其间看着各个重要proposals一路review过来:rvalue-references、concepts、memory-原创 2007-06-20 21:29:00 · 48643 阅读 · 40 评论 -
《Working Effectively With Legacy Code》译序
修改代码之三十六计 by 刘未鹏 六六三十六,数中有术,术中有数。阴阳燮理,机在其中。机不可设,设则不中。 —— 《三十六计》 一本好的技术书籍一般有两种情况,一是介绍一些新奇而有原创 2007-03-09 16:30:00 · 12338 阅读 · 4 评论 -
Track'em Down
Track’em Down 刘未鹏 C++的罗浮宫(http://blog.youkuaiyun.com/pongba) P.S. 很多朋友都抱怨说STL出问题的时候debug很难,编译期错误算是轻的,大不了一串串令人头晕的出错信息,至少还能双击定位到错误行。而神秘的运行期崩溃才是真正令人头大的问题。下面就是一个比较原创 2006-06-03 22:55:00 · 15610 阅读 · 27 评论 -
How Does it End()?
How Does It End()? By 刘未鹏C++的罗浮宫(http://blog.youkuaiyun.com/pongba) The End() of the StorySTL里的end()看似是个简单得不能再简单的函数,遵从内建数组的遍历手法,end()返回指向“最后一个元素之后一位的迭代器”,从而使得使用end()的循环遍历变得更容易和直观。然而,由于end()的特殊性(原创 2006-09-23 07:23:00 · 6488 阅读 · 5 评论 -
你应当如何学习C++(以及编程)(rev#1)
你应当如何学习C++(以及编程)(rev#1) By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) Javascript是世界上最受误解的语言,其实C++何尝不是。坊间流传的错误的C++学习方法一抓就是一大把。我自己在学习C++的过程中也走了许多弯路,浪费了不少时间。 为什么会存在这么多错误认识?原因主要有三个,一是C+原创 2007-05-16 14:37:00 · 175927 阅读 · 148 评论 -
《C++0x漫谈》系列之:Auto的故事
《C++0x漫谈》系列之:Auto的故事 By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 《C++0x漫谈》系列导言 这个系列其实早就想写了,断断续续关注C++0x也大约有两年余了,其间看着各个重要proposals一路review过来:rvalue-references,concepts,memory-mod原创 2007-09-07 15:20:00 · 36319 阅读 · 13 评论 -
泛型编程:源起、实现与意义
泛型编程:源起、实现与意义 By 刘未鹏C++的罗浮宫(http://blog.youkuaiyun.com/pongba)(去年12月《程序员》的约稿)(以前也写过一篇相关的文章:Generic Programming - What Are You, anyway? ) 为什么泛型泛型编程(Generic Programming)最初提出时的动机很简单直接:发明一种语原创 2008-06-13 20:02:00 · 45465 阅读 · 17 评论 -
C++之父元旦专访(8+13个问题,关于C++的学习&使用和未来)
C++之父元旦专访(8+13个问题,关于C++的学习&使用和未来) By TopLanguage (http://groups.google.com/group/pongba)刘未鹏|C++的罗浮宫 (http://blog.youkuaiyun.com/pongba) 临近元旦的一个月,Bjarne在通信中答应接受一次访谈。高兴之余,为访谈的问题犯了难,我不想做成一个个人的访谈;我希望这原创 2008-01-10 17:57:00 · 25491 阅读 · 23 评论 -
学习C++:实践者的方法(Beta1)
学习C++:实践者的方法(Beta1) By 刘未鹏(pongba) C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 前言 我的blog以前很长一段时间关注的都是C++中的技术&细节,乃至于读者和应者都寥寥。然而5月份的时候写的一篇“你应当如何学习C++”,阅读量却达到了3万多,在blog上所有文章中却是最高的(且远远超过了第二位);评论数目也有一百多原创 2007-12-11 12:11:00 · 106624 阅读 · 88 评论 -
为什么C++(来自C++之父的观点)
为什么C++(来自C++之父的观点) By Bjarne Stroustruphttp://www.research.att.com/~bs/ 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 注:9月份的时候写了一篇“Why C++”(翻译版见这里)。后来我把文章发给Bjarne,问问他的意见。Bjarne友好的对文章原创 2007-12-04 15:50:00 · 35152 阅读 · 15 评论 -
错误处理(Error-Handling):为何、何时、如何(rev#2)
错误处理(Error-Handling):为何、何时、如何(rev#2) By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba)TopLanguage(http://groups.google.com/group/pongba) 引言错误处理(Error-Handling)这个重要议题从1997年(也许更早)到2004年左右原创 2007-10-08 18:27:00 · 42790 阅读 · 22 评论 -
为什么C++(中文版——感谢waterwalk翻译)
为什么C++(感谢waterwalk翻译) 刘未鹏(pongba) /文waterwalk /译C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 首先非常感谢waterwalk的辛勤翻译:-) waterwalk把翻译回贴在原文的下面了,为了方便阅读我提取出来编辑以后重发一个帖子。这篇文章原本是想对最近C/C++争论系统的整理一下一些思考的,但由于一原创 2007-09-14 16:52:00 · 31647 阅读 · 48 评论 -
为什么C++
Why C++ 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 非常感谢waterwalk翻译了整篇文章,我整理了之后单独贴了出来,见这里。 The ProblemSo, why C++? Before you frown and turn away. Just try to answer this simple qu原创 2007-09-11 14:19:00 · 34852 阅读 · 32 评论 -
《C++0x漫谈》系列之:瘦身前后——兼谈语言进化
瘦身前后——兼谈语言进化 By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 《C++0x漫谈》系列导言 这个系列其实早就想写了,断断续续关注C++0x也大约有两年余了,其间看着各个重要proposals一路review过来:rvalue-references,concepts,memory-model,varia原创 2007-09-10 10:24:00 · 33831 阅读 · 75 评论 -
一个问题,两人讨论,几行代码,一些启发
一个问题,两人讨论,几行代码,一些启发 By 刘未鹏(pongba)刘言|C++的罗浮宫(http://blog.youkuaiyun.com/pongba) Shen:请教一个问题,我简化一下,发给你: Pongba:OK Shen: 就这样发给你吧,不多,我描述一下: template class A { }; class B { public: A *原创 2007-06-11 13:24:00 · 11008 阅读 · 10 评论 -
锁无关的(Lock-Free)数据结构——在避免死锁的同时确保线程继续
C/C++ Users Journal October, 2004锁无关的(Lock-Free)数据结构在避免死锁的同时确保线程继续 Andrei Alexandrescu刘未鹏 译Andrei Alexandrescu是华盛顿大学计算机科学系的在读研究生,也是《Modern C++ Design》一书的作者。他的邮箱是 andrei@metalanguage.com。翻译 2006-01-26 01:15:00 · 28038 阅读 · 8 评论 -
图灵机杂思(rev#2)
图灵机杂思(rev#2) By 刘未鹏C++的罗浮宫(http://blog.youkuaiyun.com/pongba) C++ Template是图灵完备的(turing-complete,或者更确切的说,是图灵等价(turing-equivalent)),关于这一点是没什么悬念的,只是前几天有位朋友问到为什么说C++ Template是图灵完备的,为了找出当初的连接,于是又去原创 2006-03-11 13:48:00 · 49534 阅读 · 42 评论 -
偷梁换柱——揭开多态的面纱
偷梁换柱——揭开多态的面纱 ——从C++到.NET 声明:本文的前半部分纯粹是为初学者写的,如果你对C++对象模型稍有了解,就不用看了。后半部分才把.NET的对象模型拉进来做了个简单的比较——总之,如果你不是初学者就不必看了,我也实在不想浪费你的时间:-)原创 2004-10-15 19:00:00 · 9509 阅读 · 11 评论 -
旧话重提:pImpl惯用手法的背后
旧话重提:pImpl惯用手法的背后 刘未鹏 pImpl惯用手法已经太老了,老得人们已经记不得它是什么时候被提出的了。像这么一个老得牙都掉了的东东几乎是肯定讲不出什么新意出来的。本文也不例外,只不过,这里我们并不想提出什么新的创意,而是对pI原创 2004-09-12 20:20:00 · 9009 阅读 · 10 评论 -
《C++ Template Metaprogramming》附录A——预处理元编程
《C++ Template Metaprogramming》附录A:预处理元编程 By David Abraham(http://www.boost.org/people/dave_abrahams.htm) By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 原文链接(http://www.boost-cons翻译 2004-09-21 12:27:00 · 11459 阅读 · 7 评论 -
C++标准库的一个有趣的小bug
在看别人的代码时,意外发现了一个标准库的问题(不知到标准委员会的c++ standard lib.core issue文件里有没有提到,不管它),是这样的,代码如下:struct X{};ostream& operator{ ^^^^ ---- #1 non-const referen原创 2004-08-26 02:21:00 · 29130 阅读 · 59 评论 -
《C++ Template Metaprogramming》第三章——深度探索元函数
《C++ Template Metaprogramming》第三章:深度探索元函数 By David Abraham(http://www.boost.org/people/dave_abrahams.htm) By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 原文链接(http://www.boost-con翻译 2004-09-01 06:14:00 · 18900 阅读 · 19 评论 -
《C++ Template Metaprogramming》译序——经典之后的经典
——写在C++图书出版史上又一部经典著作问世之前刘未鹏 /文 C++图书界沉寂久矣!至少我是这么认为的。国内引进第一批C++经典书籍的时候我是亲历的。感觉真是“忽如一夜春风来,千树万树梨花开”。别误会,我说的这个第一批并非《C++ Programming Language》《C++ Primer》这种经典中的经典。而是说诸如《Exceptional C++》《More原创 2004-09-01 06:21:00 · 14205 阅读 · 22 评论 -
.NET Generics vs. C++ Templates
.NET Generics VS C++ Templates 刘未鹏 /文C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 在C++中还没有引进模板的时候,C++STL之父stepanov就敏锐的发觉,面向对象理论并不能描述现有的所有结构,比如,算法就不是一个对象,再深入下去,他发觉有很多算法的抽象逻辑并不依赖于它所作用的对象以及底层数据结构的组织方原创 2004-08-24 02:39:00 · 6943 阅读 · 4 评论 -
在C++中侦测内嵌型别的存在(rev#2)
在C++中侦测内嵌类型的存在(rev#2) By 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 动机(Motivation)假设一所大学的注册系统提供了一个注册函数: templateclass T>void Register(T person){Register(person, typename T原创 2004-08-24 01:18:00 · 17016 阅读 · 13 评论 -
为什么C++编译器不能支持对模板的分离式编译
为什么C++编译器不能支持对模板的分离式编译 刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba) 首先,一个编译单元(translation unit)是指一个.cpp文件以及它所#include的所有.h文件,.h文件里的代码将会被扩展到包含它的.cpp文件里,然后编译器编译该.cpp文件为一个.obj文件(假定我们的平台是win3原创 2003-10-24 16:23:00 · 33803 阅读 · 46 评论 -
Conversations: Value Lessons(值类型)
Conversations: Value Lessons(值类型) Jim Hyslop&Herb Sutter /著翻译 2004-10-26 21:10:00 · 5417 阅读 · 3 评论 -
“Coding在西元前”——写给所有热爱C++的朋友
Coding 在西元前 刘未鹏 /文Bjarne Stroustrup颁布了C++圣典厚重的黑色封面内一共有一千七百多页你在书店前凝视封底的价钱我却在旁静静欣赏你那张痛苦的脸* 重载 多重继承 模板是谁的发现 喜欢在coding中你那独一无二的一面 经过AT&T原创 2004-11-26 17:33:00 · 13343 阅读 · 17 评论 -
锁无关的数据结构与Hazard指针——操纵有限的资源
C/C++ Users Journal December, 2004锁无关的数据结构与Hazard指针操纵有限的资源 By Andrei Alexandrescu and Maged Michael刘未鹏(pp_liu@msn.com) 译 Andrei Alexandrescu是华盛顿大学计算机科学系的在读研究生,也是《Modern C++ Design》一书的作者。翻译 2006-01-29 20:57:00 · 22593 阅读 · 18 评论 -
C++中的求值|副作用|序列点所导致的模糊语义
C++中的求值|副作用|序列点所导致的模糊语义前一阵子一个偶然的机会,在soloist的blog上(http://blog.youkuaiyun.com/soloist)看到一篇关于C/C++中的一个十分历史悠久的问题的讨论,即表达式求值的问题。说实话这个问题着实不新鲜了,被所有论坛提出过无数次,无非就是表达式求值顺序不确定的问题嘛。所以我也就没太在意,soloist那里吵翻了天,说什么的都有,热闹非凡。原创 2005-12-01 18:22:00 · 19471 阅读 · 9 评论 -
《Exceptional C++ Style》译序[已出版]
《Exceptional C++ Style》译序 by 刘未鹏 逍遥派武功讲究轻灵飘逸,闲雅清隽,丁春秋和虚竹这一交上手,但见一个童颜白发,宛如神仙,一个僧袖飘飘,冷若御风。两人都是一沾即走,当真便似一对花间蝴蝶,蹁跹不定,于这“逍遥”二字发挥到了淋原创 2005-11-22 04:55:00 · 11762 阅读 · 4 评论 -
关于C++泛型编程的一些杂感
关于C++泛型编程的一些杂感刘未鹏(pongba)C++的罗浮宫(http://blog.youkuaiyun.com/pongba)一些关于GP的思考或总结,没有太多的技术细节,主要是一些思想上的阐释。另外,文字比较乱,没有细细整理,凑合吧;-) 关于GP,可以说我是对它有很复杂的感情的,其实GP这种东西最好是建立在无类型语言上面,就C++0X目前对GP的支持的趋势来看,确实如此,au原创 2005-06-10 11:36:00 · 22262 阅读 · 27 评论 -
《Imperfect C++》译序[已出版]
《Imperfect C++》译序 by 刘未鹏刀有很多种,有单刀,双刀,朴刀,戒刀,锯齿刀,砍山刀,鬼头刀原创 2005-08-15 22:18:00 · 13247 阅读 · 10 评论 -
《Exceptional C++ Style》开放样章译稿
感谢老朋友谢轩(《Symbian OS Explained》译者)无私提供原译稿,这是调整过的版本。因为是原公开样章,所以放在blog上。第34章 索引表难度5 索引表确实是一种有用的惯用法(idiom),而且是一种值得去了解学习的技术。但我们如何才能有效地实现这一技术呢……等等,应当不仅是“有效”,“完美”怎么样? JG问题1. 谁会受益于清晰易懂的代码?翻译 2004-12-25 15:27:00 · 9347 阅读 · 4 评论