C++
言葉
这个作者很懒,什么都没留下…
展开
-
关于C++类的内存结构总结
一、真空类 class CNull { }; 长度:1 内存结构: ?? 评注:长度其实为0,这个字节作为内容没有意义,可能每次都不一样。 二、空类 class CNull2 { public: CNull2(){printf("Construct/n");} ~CNul转载 2013-07-14 21:30:53 · 519 阅读 · 0 评论 -
浅谈new和delete
new表达式的目的在于运行阶段为一对象分配未命名内存,并使用指针以访问这个值,因此new表达式返回的是指针,其通用格式如下: typeName *pointer_name= new typeName; 与普通的变量地址赋给指针如: int higgens; int *pt=&higgens;相比,new出来的指针所指向原创 2013-07-15 22:33:16 · 720 阅读 · 0 评论 -
malloc和new的区别
malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。 对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任转载 2013-07-21 21:27:59 · 526 阅读 · 0 评论 -
小结:虚函数
关于虚函数的一些要点: 1.在基类声明函数时使用关键字virtual使该函数在基类以及所有派生类中是虚的 2.在继承中,只有使用指针或者引用的方式来调用虚函数时,虚函数才能发挥多态性的作用 3.被继承的虚函数仍然是虚函数 4.编译器对非虚方法使用静态联编,对虚方法使用动态联编。在虚函数中使用成员限定可以强行解除动态联编,如: (B为A类的派生类,并在A类中定义了虚函原创 2013-07-22 22:55:41 · 528 阅读 · 0 评论 -
小结:文件输入和输出
C++中,要让程序写入文件,应该要:1.创建ofstream对象;2.将该对象与目标文件关联起来;3.使用cout输出到文件中。 同理,读取文件的过程与写入相似:1.创建ifstream对象;2.将该对象与目标文件关联起来;3.使用cin输出到文件中。 以写入文件过程为例,以下是一个简单的例子: o原创 2013-07-22 00:17:46 · 843 阅读 · 0 评论