随笔分类 - C++
摘要:c++对象模型 C++的对象模型,就是对 C++的新特性所建立的一个模型。简单点来说,它包括对象的内存布局,以及怎么用这个布局。看书上的一个例子: 1 //C style 2 typedef struct { 3 float x; 4 float y; 5 float z; 6 } Point3D; 7 8 //Point3D对象的 operations 9 Point3D Point3D_constructor(Point3D * const this, float x, float y, float z) {10 this->x = x;11 this-...
阅读全文
摘要:C++加了什么? C++在语法上相对于 C,最重要的是增加了 class 的定义(其它的还有 template 等特性)。C++和 C 语言在编译之后,都是运行在同一套环境上的二进制代码,所以从某个角度来说,C++和 C 语言并无区别,而新增加的特性只是一些语法糖。确实,C++的很多新特性都可以转为 C 语言来实现,但是程序员必须要写大量重复的代码来实现这些功能。比如一个 class,转为 C,就是一个结构体,加一堆处理这个结构体的函数(第一个参数为这个结构体的指针);继承就是在结构体中包含父类的结构体(类似于复合);虚函数就是在结构体中加一个 vfptr(虚函数指针),程序员再自己定义一个.
阅读全文
浙公网安备 33010602011771号