随笔分类 -  C/C++

翻译:怎样理解C++ 11中的trivial和standard-layout---An answer from stackoverflow
摘要:上一篇译文中,我们了解到C++中的Aggregates和POD类型,那么在C++ 11中这些定义会有怎样的改变呢,什么是trivial和standard-layout类型呢?相信在这篇译文中,可以找到你想要的答案-------------------------------------------------------------------------译文C++ 11 做了哪些改变?AggregatesC++标准中Aggregate的定义稍微有所改变,但是之前的定义基本相同:一个Aggregate是一个数组或者一个没有用户声明构造函数,没有{ }和=直接初始化(brace-or-equal 阅读全文

posted @ 2013-03-28 10:48 落叶的思维 阅读(6713) 评论(5) 推荐(1) 编辑

翻译:怎样理解C++中的Aggregate和POD类型---An answer from stackoverflow
摘要:C++ 11标准中统一了初始化语法,在了解这些变化之前,我们有必要对Aggregate类型和POD类型有所了解,看到stack overflow上有篇不错的文章(原文),对Aggregate、POD和C++ 11中的变化有详尽的解释,感觉非常不错,先翻译前半部分,后半部分过两天再给出。-------------------------------------------------------------------------译文如何来读:这篇文章很长,如果Aggregates和PODs都想了解,就静下心来完整的把这篇文章读完,如果你仅仅对Aggregates感兴趣,读第一部分就可以了。如果 阅读全文

posted @ 2013-03-25 18:11 落叶的思维 阅读(4575) 评论(1) 推荐(2) 编辑

翻译:怎样理解 C++ 11中的move语义(深入)--- An answer from stackoverflow
摘要:紧接上一篇译文,这一篇对move语义的来龙去脉有非常详尽的回答(原文),篇幅较长,如果你能读完,相信你不会再问任何关于move语义的问题了 阅读全文

posted @ 2013-01-22 14:27 落叶的思维 阅读(13487) 评论(22) 推荐(10) 编辑

翻译:怎样理解 C++ 11中的move语义(基础)--- An answer from stackoverflow
摘要:前不久facebook在github上发布了一个c++工具库folly,其中的实现大量的使用了c++ 11的新特性,同时,gcc 从4.3版本开始支持c++ 11, 到现在的版本4.8,已经支持了绝大部分c++ 11的新特性(support list),让我感到时候有必要认真学习一下c++ 11了.关于11引进的新特性概述,已经有很多的文章了,如果你不了解,可以到这里.今天主要来学习11版本中颇为重要的一个特性,move语义与右值引用,Stackoverflow 上有一篇相当不错的解释(原文),我觉得十分有必要翻译一下,一方面自我学习,一方面分享给大家。由于原文较长,这里分为基础和加深两部分来 阅读全文

posted @ 2013-01-21 16:44 落叶的思维 阅读(8047) 评论(2) 推荐(3) 编辑

翻译:如何成为一个专业级的c++程序员---An answer from quora
摘要:前几天转载一篇quora上的文章,但是英文的,我还是觉得有必要将这篇文章翻译一下,希望更多的人能够看到C++是一门复杂的语言成为专业级c++程序员的路线:步骤0:理解c++语言 必须去读Stroustrup的《The C++ Programming Language》,这个是必经的道路步骤1:了解c++历史,理解c++的特性是怎样被设计出来的 去读Stroustrup的《The Design and Evolution of C++》步骤2:理解声明一个类时,c++内部做了什么 Stanley Lippman 的《Inside C++ Object Model》会告诉你的步骤3:如... 阅读全文

posted @ 2013-01-17 16:39 落叶的思维 阅读(2933) 评论(13) 推荐(8) 编辑

如何成为一个专业级的c++ 程序员--- An answer from quora
摘要:C++ is aHuuuuuge Language.The Path towards Expertise would be:Understanding C++ -Step 0You have got to read The C++ Programming Language by Stroustrup, no way you can escape this.http://www.amazon.com/The-Progra... Understanding Histrory of C++ and Why come they designed the C++ Features -Step 1The 阅读全文

posted @ 2013-01-07 17:31 落叶的思维 阅读(1238) 评论(1) 推荐(3) 编辑

将一幅图像转换为灰度图
摘要:灰度图是指用灰度表示的图像,灰度是在白色和黑色之间分的若干个等级,其中最常用的是256级,也就是256级灰度图。灰度图在医学、航天等领域有着广泛的应用。那么如何将一幅彩色图像转换为灰度图呢?根据人眼对红绿蓝三色的敏感程度,可以使用以下比例式进行转换: Gray= R*0.3+G*0.59+B*0.11这也是最常用的一种转换,另外还有一种常用的转换叫平均值法,即取去红绿蓝三色的平均值为灰度: Gray=(R+G+B)/3;下面来写一段程序实现第一种转换算法,显然对于对于一幅256级灰度图,每个像素采用一个字节表示足矣,即为8位位图。对于8位位图的保存,真正的RGB数据是保存在调色板里的,而实际的 阅读全文

posted @ 2011-05-16 16:13 落叶的思维 阅读(12198) 评论(11) 推荐(5) 编辑

图像旋转算法与实现
摘要:好吧,先下个定义,图像旋转是指图像以某一点为中心旋转一定的角度,形成一幅新的图像的过程。当然这个点通常就是图像的中心。既然是按照中心旋转,自然会有这样一个属性:旋转前和旋转后的点离中心的位置不变.根据这个属性,我们可以得到旋转后的点的坐标与原坐标的对应关系。由于原图像的坐标是以左上角为原点的,所以我们先把坐标转换为以图像中心为原点。假设原图像的宽为w,高为h,(x0,y0)为原坐标内的一点,转换坐标后的点为(x1,y1)。那么不难得到:x1= x0 - w/2; y1 = -y0 + h/2;在新的坐标系下,假设点(x0,y0)距离原点的距离为r,点与原点之间的连线与x轴的夹角为b,旋转的角度 阅读全文

posted @ 2011-05-15 18:26 落叶的思维 阅读(20876) 评论(5) 推荐(3) 编辑

两种图像缩放算法的对比与实现
摘要:想在流媒体领域走的更远一点,但是发现自己这方面的专业知识欠缺厉害,特别是图形图像专业知识,于是买了本《数字图像处理》补补。这本书纯理论,什么积分、微分、什么滤波器,傅立叶变换,搞得一头雾水,还是写几行代码来得踏实。言归正题,图像缩放顾名思义,就是把原图像按照目标尺寸放大或者缩小,是图像处理的一种。自然,图像缩放的核心也就是怎么样根据已知图像计算目标图像的各点像素值。最简单的是最临近插值算法,这种算法就是根据原图像和目标图像的尺寸,计算缩放的比例,然后根据缩放比例计算目标像素所依据的原像素,过程中自然会产生小数,这时就采用四舍五入,取与这个点最相近的点。另一种算法是双线性内插值算法,这种算法的目 阅读全文

posted @ 2011-05-13 16:23 落叶的思维 阅读(16162) 评论(5) 推荐(4) 编辑

转载:C++ Web Programming
摘要:What is CGI ?The Common Gateway Interface, or CGI, is a set of standards that define how information is exchanged between the web server and a custom script.The CGI specs are currently maintained by the NCSA and NCSA defines CGI is as follows:The Common Gateway Interface, or CGI, is a standard for e 阅读全文

posted @ 2011-04-06 10:28 落叶的思维 阅读(1101) 评论(0) 推荐(2) 编辑

导航