- 博客(9)
- 资源 (67)
- 收藏
- 关注
转载 《深度探索C++对象模型》读书笔记(7)
《深度探索C++对象模型》读书笔记(7)。 <br /> ***Template的“具现”行为*** <br /> template class中的任何member都只能通过template class的某个实体来存取或操作。<br /> Point<float>::Status s; // ok<br />Point::Status s; // error<br /> 如果我们定义一个指针,指向特定的实体,像这样:<br /> Point<float> *ptr = 0;<br /> 由
2010-12-20 14:44:00 752
转载 《深度探索C++对象模型》读书笔记 最后一记
《深度探索C++对象模型》读书笔记 最后一记。 <br /> 第6章主要讲述了执行期语意学,主要内容是关于数组的在构建和析构是如何进行的。 <br /> 第7章主要讲述了有关Template的相关内容。<br /> 这两章内容散见于《Effective C++》、《More Effective C++》、《C++Primer》《C++Templates中文版》等书籍,如果感兴趣请阅读对应的书籍。<br /> 本读书笔记主要想谈一下对语意的理解。<br /> 本人认为C++程序设计可以简单
2010-12-20 14:44:00 793
原创 《深度探索C++对象模型》读书笔记(6)
《深度探索C++对象模型》读书笔记(6)。 <br /> ***对象的构造和解构*** <br /> 一般而言,我们会把object尽可能放置在使用它的那个程序区段附近,这样做可以节省不必要的对象产生操作和销毁操作。<br /> ***全局对象***<br /> 全局对象的静态初始化策略包括以下几个步骤:<br /> (1)为每一个需要静态初始化的对象产生一个_sti_……()函数,内含必要的constructor调用操作或inline expansions;<br /> (2)为每一
2010-12-20 14:43:00 739
转载 《深度探索C++对象模型》读书笔记(4)
《深度探索C++对象模型》读书笔记(4)。 <br /> ***非静态成员函数(Nonstatic Member Functions)*** <br /> C++的设计准则之一就是:nonstatic member function至少必须和一般的nonmember function有相同的效率。也就是说,如果我们要在以下两个函数之间作选择:<br /> float magnitude3d(const Point3d *this) { ... }<br />float Point3d::magnitu
2010-12-20 14:42:00 838
转载 《深度探索C++对象模型》读书笔记(5)
《深度探索C++对象模型》读书笔记(5)。 <br /> ***纯虚拟函数*** <br /> 在设计抽象基类时,需要注意以下几点:<br /> (1)不要将destructor声明为pure virtual function;<br /> 如果将destructor声明为pure virtual function,则设计者一定得定义它。因为每一个derived class destructor会被编译器加以扩展,以静态调用得方式调用其“每一个virtual base class”以及“上一层
2010-12-20 14:42:00 817
转载 《深度探索C++对象模型》读书笔记(2)
《深度探索C++对象模型》读书笔记(2)。 <br /> default constructor仅在编译器需要它时,才会被合成出来。 <br /> 通常来说,由编译器合成出来的default constructor是没啥用的(trivial),但有以下几种例外:<br /> (1)带有“Default Constructor”的Member Class Object<br /> 如果一个class没有任何constructor,但它内含一个member object,而后者有default c
2010-12-20 14:41:00 613 1
转载 《深度探索C++对象模型》读书笔记(3)
《深度探索C++对象模型》读书笔记(3)。 <br /> 在visual C++ 6.0中测试如下代码:<br /> #include "iostream"<br />using namespace std;<br /><br />class X {};<br />class Y : public virtual X {};<br />class Z : public virtual X {};<br />class A : public Y,public Z {};<br /><br />int mai
2010-12-20 14:41:00 949
转载 《深度探索C++对象模型》读书笔记(1)
《深度探索C++对象模型》读书笔记(1)。 <br /> 在C++中,有两种class data members:static和nonstatic,以及三种class member functions:static、nonstatic和virtual.已知下面这个class Point声明:<br /> class Point ...{<br />public:<br />Point(float xval);<br />virtual ~Point();<br /><br />float x() cons
2010-12-20 14:40:00 800 1
转载 VC 之 Checked Iterator
<br />Checked Iterator是指具有越界检查功能的迭代器,并且会在检查到越界操作时触发运行时错误处理(调用非法参数处理例程或者抛出异常)。VC从VS2005 开始支持Checked Iterator。另外,VC还支持Debug Iterator,有更多的检查功能,这里不予讨论。<br /><br />Part One 编译<br /><br /> Checked Iterator能够确保迭代器不会发生越界访问(如果发生越界访问,则会进行相应的处理)。如果在需要Checked Itera
2010-12-20 14:37:00 1548
Compuware Devpartner Studio 9.0.2 Professional 种子和破解文件
2010-11-02
微软过滤驱动内存管理smbios说明等技术文档
2010-04-09
icrosoft Windows Internals Fourth Edition(2004).chm
2009-04-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人