痞子龙3D编程

学无止境,三人行必有我师,把这几年收藏的文章都晒出来,大家共享吧!向原创者致敬!察而知不足,严谨,求真,务实;网络收藏夹...

熟悉标准库

C++标准库很大。非常大。难以置信的大。怎么个大法?这么说吧:在C++标准中,关于标准库的规格说明占了密密麻麻300多页,这还不包括标准C库,后者只是 "作为参考"(老实说,原文就是用的这个词)包含在C++库中。 当然,并非总是越大越好,但在现在的情况下,确实越大越好,因为大...

2015-07-01 15:29:00

阅读数:625

评论数:0

intel Threading Building Blocks 入门 (hello,TBB)

Intel Threading BuildingBlocks(Intel TBB)是一个使用ISO C++代码实现的多平台、可扩展并行编程库。但目前为止这方面的中文资料却很少。 初步了解TBB时,并非每个人都打算看官方提供的资料,即使是Intel Threading BuildingBlocks...

2013-01-15 16:53:30

阅读数:1858

评论数:0

深入研究 C++中的 STL Deque 容器

本文档深入分析了std::deque,并提供了一个指导思想:当考虑到内存分配和执行性能的时候,使用std::deque要比std::vector好。   介绍   本文深入地研究了std::deque 容器。本文将讨论在一些情况下使用deque> 比vector更好。读完这篇文章...

2012-04-27 10:22:46

阅读数:907

评论数:0

深入new

<br />“new”是C++的一个关键字,同时也是操作符。关于new的话题非常多,因为它确实比较复杂,也非常神秘,下面我将把我了解到的与new有关的内容做一个总结。new的过程当我们使用关键字new在堆上动态创建一个对象时,它实际上做了三件事:获得一块内存空间、调用构造函数、返回正确...

2011-04-14 09:21:00

阅读数:894

评论数:0

shared_ptr相关小结

<br />程序中,有些对象的生命周期是静态的可预测的,这时只要把构造销毁的时机硬编码进程序即可;然而有些对象的生命周期却和运行时环境相关(例如在线程间共享对象,无“引用”时销毁),对于这种类型的对象必须借助额外的信息和设施来控制,基于引用计数的封装boost::shared_ptr及...

2011-04-11 18:01:00

阅读数:1210

评论数:0

shared_ptr用法

头文件: "boost/shared_ptr.hpp"<br />几乎所有稍微复杂点的程序都需要某种形式的引用计数智能指针。这些智能指针让我们不再需要为了控制被两个或多个对象共享的对象的生存期而编写复杂的逻辑。当引用计费降为零,没有对象再需要这个共享的对象,这个对象...

2011-04-11 17:59:00

阅读数:1359

评论数:0

shared_ptr源码解读

<br />1  介绍<br />众所周知,auto_ptr由于它的破坏性复制语义,无法满足标准容器对元素的要求,因而不能放在标准容器中;如果我们希望当容器析构时能自动把它容纳的指针元素所指的对象删除时,通常采用一些间接的方式来实现,显得比较繁琐。boost库中提供了一种新...

2011-04-11 17:57:00

阅读数:2117

评论数:0

auto_ptr与shared_ptr --- auto_ptr

Roger (roger2yi@gmail.com) 这篇文章试图说明如何使用auto_ptr和shared_ptr,从而使得动态分配对象的使用和管理更安全,方便。除了一般的使用说明外,更主要是说明它们之间的异同 —— 满足需求的不同和开销上的差异。 文章的多数知识都来源于: <!--[if...

2011-04-11 17:55:00

阅读数:1255

评论数:0

STL的内存分配器

<br />题记:内存管理一直是C/C++程序的红灯区。关于内存管理的话题,大致有两类侧重点,一类是内存的正确使用,例如C++中new和delete应该成对出现,用RAII技巧管理内存资源,auto_ptr等方面,很多C/C++书籍中都使用技巧的介绍。另一类是内存管理的实现,如linu...

2011-04-04 18:34:00

阅读数:5769

评论数:0

有感于STL的内存管理

<br />1. 背景<br /><br />前些天在一个技术分享会上,某大牛说,STL使用了内存池,释放内存的时候,并不释放给OS,而是自己由留着用。<br /><br />听到这些观点后,我就有些着急了,因为我以前一直是直接使用STL...

2011-04-04 18:33:00

阅读数:6178

评论数:1

CString和string区别

<br />CString,是ATL/MFC共享的, string是C++标准库的<br /><br />         相同点:<br />(1)用他们都可以取代对char*的使用。<br />(2)都封装了有丰富的字符串操作接口。&...

2011-04-04 16:21:00

阅读数:993

评论数:2

CString/string/char*比较详解

<br />  关键点:<CStirng>主要用于MFC的编写,而<string>属于STL,两者都是符合标准C++的,但是在非 windows平台或者说VC上还是用<string>吧。另外还有一个<string.h>这是传统C++才有的...

2011-04-04 16:19:00

阅读数:919

评论数:0

读《C++语言的设计和演化》有感

C++ Primer送人了,但是身边没有一本纸质的C++权威手册有时还是不方便,于是购买了C++之父的三本书——《C++程序设计语言》,《C++程序设计原理与实践》和《C++语言的设计和演化》。<br /><br />第三本书是我比较喜欢的历史八卦+技术的,于是先读了。&l...

2011-03-30 08:58:00

阅读数:1322

评论数:0

C++——STL所有算法介绍

<br />   STL算法部分主要由头文件<algorithm>,<numeric>,<functional>组成。要使用 STL中的算法函数必须包含头文件<algorithm>,对于数值算法须包含<numeric>,<...

2011-03-29 18:41:00

阅读数:1357

评论数:0

c++模板的优点和缺点

<br />作为C++语言的新组成部分,模板引入了基于通用编程的概念。通用编程是一种无须考虑特定对象的描述和发展算法的方法,因此它与具体数据结构无关。但在决定使用C++模板之前,让我们分析一下使用模板的优缺点。<br /><br />目的:<br />...

2011-03-28 18:55:00

阅读数:3041

评论数:0

使用C++模板的优点和缺点

<br />作为C++语言的新组成部分,模板引入了基于通用编程的概念。通用编程是一种无须考虑特定对象的描述和发展算法的方法,因此它与具体数据结构无关。但在决定使用C++模板之前,让我们分析一下使用模板的优缺点。<br />目的: 当被问及引入C++模板的目的时,C++的发明...

2011-03-28 18:54:00

阅读数:1540

评论数:0

C++模板的缺点以及如何避免

<br />    templates(模板)是节省时间和避免代码重复的极好方法,我们可以只输入一个类模板,就能让编译器实例化所需要的很多个特定类及函数。类模板的成员函数只有被使用时才会被实例化,所以只有在每一个函数都在实际中被使用时,我们才会得到这些函数。 确实这是一个很重要的技术,...

2011-03-28 18:53:00

阅读数:2690

评论数:0

C++标准库和C++标准模版库

<br />    C++标准库很大,在现在的情况下,C++标准库确实越来越好,因为大的库会包含大量的功能.标准库中的功能越多,开发自己的应用程序时能借助的功能就越多,C++库并非提供一切(很明显的是没有提供开发和图形用户接口的支持),但确实提供了很多.标准C++库中主要有以下主要组件...

2011-03-27 18:18:00

阅读数:814

评论数:1

C++标准库简介

<br />C++标准库的所有头文件都没有扩展名。C++标准库的内容总共在50个标准头文件中定义,其中18个提供了C库的功能。 <cname>形式的标准头文件【 <complex>例外】其内容与ISO标准C包含的name.h头文件相同,但容纳了C++扩展的功能。...

2011-03-27 18:16:00

阅读数:791

评论数:0

STL deque 优势分析

<br />引子<br />std::TextPool 基于 std::deque 实现。所以尽管本文讨论 std::deque,但是所有的结论对 std::TextPool 同样有效。<br />实现概要<br />顾名思义,这是一个“双向队列(d...

2011-03-27 18:02:00

阅读数:1651

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭