
【C++进阶】
文章平均质量分 68
CPP攻城师
You got a dream, you gotta protect it. People cant do something themselves,they wanna tell you you cant do it.If you want something, go get it.
展开
-
【C++进阶】c++继承中的内存布局(转)
c++继承中的内存布局(转)今天在网上看到了一篇写得非常好的文章,是有关c++类继承内存布局的。看了之后获益良多,现在转在我自己的博客里面,作为以后复习之用。——谈VC++对象模型(美)简.格雷程化 译译者前言一个C++程序员,想要进一步提升技术水平的话,应该多了解一些语言的语意细节。对于使用VC++的程序员来说,还应该了解一些VC++对于C++的转载 2013-10-24 18:55:05 · 1435 阅读 · 0 评论 -
【C++进阶】C++中的数组退化
在C++中,数组永远不会按值传递。它是传递第0个元素的指针(即首地址)。原创 2014-02-24 15:51:09 · 2874 阅读 · 1 评论 -
【C++进阶】深入理解C/C++(1)
注:本文转自http://blog.youkuaiyun.com/rockics/article/details/7015067译自Deep C (and C++) by Olve Maudal and Jon Jagger,本身半桶水不到,如果哪位网友发现有错,留言指出吧:) 编程是困难的,正确的使用C/C++编程尤其困难。确实,不管是C还是C++,很难看到那种良好定义并且编写规范的代码。为转载 2013-11-11 18:29:09 · 1753 阅读 · 1 评论 -
【C++进阶】深入理解C/C++(3)
第二位候选者表现不错,那么,相比大多数程序员,他还有什么潜力没有被挖掘呢?可以从以下几个角度去考察:有关平台的问题—32位与64位的编程经验;内存对齐;CPU以及内存优化;C语言的精髓; 接下来,主要分享一下以下相关内容:内存模型;优化;C语言之精髓; 内存模型:静态存储区(stati转载 2014-02-19 15:21:17 · 1353 阅读 · 1 评论 -
【C++进阶】深入理解C/C++(4)
【C++进阶】深入理解C/C++(4)总结一下第三讲,我们可以知道,相对于第一位候选者,第二位候选者在以下几个方面有更深的认识:1、 C与C++的联系;2、 多态方面的技术;3、 如何正确的初始化一个对象;4、 Rule of three;5、 操作符new[]与操作符delete[]方面的知识;6、 常用的命名约转载 2014-02-19 15:23:22 · 1561 阅读 · 0 评论 -
【C++进阶】深入理解C/C++(2)
【Deep C (and C++)】深入理解C/C++(2) 好,接着深入理解C/C++之旅。我在翻译第一篇的时候,自己是学到不不少东西,因此打算将这整个ppt翻译完毕。 请看下面的代码片段:[cpp] view plaincopy#include void foo(void) {转载 2014-02-19 15:19:26 · 1111 阅读 · 0 评论 -
【C++进阶】深入理解C++ new
“new”是C++的一个关键字,同时也是操作符。关于new的话题非常多,因为它确实比较复杂,也非常神秘,下面我将把我了解到的与new有关的内容做一个总结。new的过程当我们使用关键字new在堆上动态创建一个对象时,它实际上做了三件事:获得一块内存空间、调用构造函数、返回正确的指针。当然,如果我们创建的是简单类型的变量,那么第二步会被省略。假如我们定义了如下一个类A:clas转载 2013-10-15 14:03:41 · 5691 阅读 · 0 评论 -
【C++进阶】__stdcall 详解
【C++进阶】__stdcall 详解 __stdcall用来修饰函数,被该关键字修饰的函数,其参数都是从右向左依次被压入到栈中,函数调用在返回前需要清理堆栈,被调函数在返回前负责清理堆栈。函数调用约定 函数调用约定主要约束了两件事:1. 参数传递的顺序2. 调用堆栈由谁(调用函数或被调用函数)负责清理 __stdcall是原创 2014-02-14 16:54:18 · 4271 阅读 · 0 评论 -
【C++基础】C++之类的前置声明
c++ 之类的前置声明注:本文转自http://software.intel.com/zh-cn/blogs/2010/05/04/c-2刚开始学习c++的人都会遇到这样的问题:定义一个类 class A,这个类里面使用了类B的对象b,然后定义了一个类B,里面也包含了一个类A的对象a,就成了这样:一编译,就出现了一个互包含的问题了,这时就有人跳出来说转载 2013-12-02 17:21:32 · 1152 阅读 · 0 评论 -
【C++进阶】关于POD
关于POD转自:http://www.cnblogs.com/whyandinside/archive/2012/12/12/2814702.htmlA plain old data structure (POD) is a data structure that is represented only as passive collections of field v转载 2013-11-30 13:27:44 · 2166 阅读 · 0 评论 -
【C++进阶】C++的POD数据类型
POD: plain old data的缩写。POD类型包括下面类型:1、标量类型,c/c++的基本类型signed integer types (signed char, short, int, long),unsigned integer types (unsigned char, unsigned short, unsigned int, unsigned long)转载 2013-11-29 19:08:58 · 1458 阅读 · 0 评论 -
【C++进阶】for循环以及for循环运行机制
【C++进阶】for循环以及for循环运行机制for (expr1; expr2; expr3)statement第一个表示式只在循环开始前执行一次并且无条件执行。第二个表示式从第一次执行循环开始就在循环开始前运行做一次判断该表达式布尔值,是真就执行循环,是假就中断。如果第一次循环就是假,直接不执行for体。第三个表达式从第一次执行循环开始就在每次循环结束后执行一次。开转载 2013-10-27 13:25:01 · 18048 阅读 · 2 评论 -
【C++进阶】结构体和类的区别及面向对象的认识
结构体和类的区别以及面向对象的认识1.C的结构体和C++结构体的区别 1.1 C的结构体内不允许有函数存在,C++允许有内部成员函数,且允许该函数是虚函数。所以C的结构体是没有构造函数、析构函数、和this指针的。 1.2 C的结构体对内部成员变量的访问权限只能是public,而C++允许public,protected,private三种。 1.3 C原创 2013-10-25 17:13:39 · 3595 阅读 · 0 评论 -
【C++进阶】C++虚函数及虚函数表解析
虚函数的定义: 虚函数必须是类的非静态成员函数(且非构造函数),其访问权限是public(可以定义为private or proteceted, 但是对于多态来说,没有意义。),在基类的类定义中定义虚函数的一般形式: virtual 函数返回值类型 虚函数名(形参表) { 函数体 } 虚函数的作用是实现动态联编,也就是在程序的运行阶段动态地选择合适的成员函数,在定义了虚转载 2013-09-12 22:52:54 · 1644 阅读 · 1 评论 -
【C++进阶】从内存管理、内存泄漏、内存回收探讨C++内存管理
原文地址:http://www.cr173.com/html/18898_all.html文章很棒,忍不住转载了内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对 C++的痛恨,但内存管理在C++中无处不在,内存泄漏几乎在每个C++程序中都会发生,因此要想成为C++高手,内存管理一关转载 2013-10-25 15:04:16 · 6072 阅读 · 2 评论 -
【C++进阶】C++函数调用过程深入分析
C++函数调用过程深入分析0. 引言 函数调用的过程实际上也就是一个中断的过程,那么C++中到底是怎样实现一个函数的调用的呢?参数入栈、函数跳转、保护现场、回复现场等又是怎样实现的呢?本文将对函数调用的过程进行深入的分析和详细解释,并在VC 6.0环境下进行演示。分析不到位或者存在错误的地方请批评指正,请与作者联系。 首先对三个常用的寄存器做一下说明,EIP转载 2013-08-06 21:36:30 · 1314 阅读 · 1 评论 -
【C++进阶】类别互相引用(Class include each other)
[C/C++]類別互相引用(Class include each other)前言最近開始久違的寫C++程式,然後因為物件上的關係,所以某個A類別會擁有B類別,同時B類別會需要知道A類別為了能夠壤兩個類別都能夠看到,所以依照直覺的想法,會使兩方的標頭檔(Header file)都會Include彼此,但是此時編譯器卻會發生問題,究竟是為什麼呢? 這樣转载 2013-10-26 10:28:19 · 1720 阅读 · 0 评论 -
【C++进阶】C++中的空指针和野指针
空指针常量,空指针,空指针赋值区以及野指针及其形成原因原创 2014-03-12 23:43:27 · 34113 阅读 · 3 评论