![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C/C++语言
YunShell
怕什么真理无穷,进步一寸,有进步一寸的欢喜
展开
-
<<C++ Primer>>中文版 重载箭头运算符的理解
在看到C++primer page445,重载箭头操作符时候,发现有点疑惑。在网上一查,原来是中文版本的错误。搞了我半天费解。现在自己整理理解后,写于此,后来人可以借鉴。箭头运算符的重载小结: 对于该箭头运算符,其内置类型的意义为:结构体或者类类型解引用取其成员的操作符。也就说着这玩意目的就是 取结构体或者类类型对象成员的。那么重载一个比较重要的原则就是尽量保存其内置类型常规的意义。正如原创 2013-11-29 17:40:57 · 1752 阅读 · 1 评论 -
VS08下C++代码如何显示行号
原创 2014-03-19 17:21:01 · 1629 阅读 · 0 评论 -
C语言中 struct成员变量顺序对内存的占用
在C语言的结构体中,是会按照其变量类型来进行分配内存大小的。但是对于不同的编译器,结果是i不同的,在VC++6.0中是怎么个分配情况呢?用一下C中的关键字sizeof()来测试下,注意sizeof()不是函数哦!只是关键字而已。下图就是在VC++6.0中的字节分配情况:下面来分析一下,C中结构体中成员变量的写法,对占用内存的影响。却发现结构不是13个字节?却是24个字节?为原创 2013-08-29 21:02:08 · 5766 阅读 · 1 评论 -
C++中智能指针的简单使用
在C++中的类中,一定会有4大函数。构造函数,拷贝构造函数,赋值重载运算符,析构函数。如果在类的声明中,我们没有显示的定义,那么编译器将会自动为我们完成。那么各个函数的作用是什么?为什么编译器会给我们合成呢?那就是说,在类的编译过程中,或者说在对象的创建过程中,以上四个函数都必须存在。首先分析下他们各自的作用。 构造函数(constructor):完全是为了构造对象而存在。对数据成员进行原创 2014-03-30 20:23:08 · 1275 阅读 · 4 评论 -
VC++对象模型
今天在网上看到了一篇写得非常好的文章,是有关c++类继承内存布局的。看了之后获益良多,现在转在我自己的博客里面,作为以后复习之用。——谈VC++对象模型(美)简.格雷程化 译 译者前言 一个C++程序员,想要进一步提升技术水平的话,应该多了解一些语言的语意细节。对于使用VC++的程序员来说,还应该了解一些VC++对于C++的诠释。 Inside the C++ Objec转载 2014-04-29 21:38:38 · 905 阅读 · 0 评论 -
windows命令行下如何调用main函数
通常C/C++的入口函数都是main函数,平常一般使用的原型都是int main() { //something; return 0;}但是 main函数也可以是有参数的int main(int argc,char *argv[]) { //something; return 0;}参数1:argc就是命令行的参数个数比如 file ly原创 2014-03-30 11:19:00 · 4553 阅读 · 0 评论 -
简易 查找VS2008控制台内存泄露
由于在学习C++,其中经常一个问题就是内存管理问题。1.内存泄露问题 就是通过动态分配的内存,但是在程序结束的时候,并没有释放掉,而导致的问题。这个问题特别出现在连续24小时工作的平台上,一般有这样的问题,时间一久就内存不断减少,直至系统崩溃。2.在MFC程序中,已经有了内存检查机制。如何在控台程序中也出现呢? 希望的就是,在程序退出之前检查是否有内存泄露问题,也就原创 2013-12-02 16:22:54 · 1282 阅读 · 0 评论 -
尾递归(tail recursion) 的简单使用
摘要本文首先论述了尾递归的定义,然后通过实例进行讲解尾递归的本质,最后给出了两个例子完整代码。引导:什么是递归?通俗的说,就是在一个函数中不断调用自己的这么一种调用形式。递归函数的设计,就是截止条件+调用本身。大家都知道,递归的资源消耗是发生在栈中,在调用函数时候,通常需要保存相应的资源,比如参数,返回地址,局部变量等。那么进行大量的递归,就会造成栈的溢出。windows下栈为 1M。原创 2014-04-04 11:02:00 · 3079 阅读 · 0 评论 -
二叉树的应用(1)--二叉树排序树基本操作
#include struct BSTNode{ int m_nval; //数据域 BSTNode *m_pleft; // 左孩子节点 BSTNode *m_pright; //右孩子节点};/************************************************************************功能:在二叉排序树中 查找key值,原创 2014-06-14 15:45:21 · 1312 阅读 · 0 评论