C++/C
Mango_WXL
望这个博客能见证我的一点一点成长
展开
-
C++专项练习错题分析(1)
1、问题: 如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是重载错误 分析: 友元函数重载运算符时,因为没有this指针指向对象,因此参数个数保持和原来一样,运算符至少有一个参数;成员函数重载时,因为有this指针的原因,所以参数个数要少一个。 扩展: 1. 友元函数重载时,参数列表为1,说明是一元,为2是二元; 2. 成员函原创 2016-08-18 17:12:09 · 1117 阅读 · 0 评论 -
STL模板
标准模板库就是类与函数模板的大集合。STL共有6种组件:容器,容器适配器,迭代器,算法,函数对象和函数适配器。1、容器:容器是用来存储和组织其他对象的对象。STL容器类的模板在标准头文件中定义。主要如下所示①序列容器基本的序列容器是上面图中的前三类:关于三者的优缺点主要是:A:vectorT>矢量容器:可以随机访问容器的内容,在序列末尾添加或删除对象,但是因为是从尾部删除,过程非常转载 2016-10-04 09:36:34 · 533 阅读 · 0 评论 -
内存对齐
对齐原因 大部分的参考资料都是如是说的: 1、平台原因(移植原因):不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。 2、性能原因:数据结构(尤其是栈)应该尽可能地在自然边界上对齐。原因在于,为了访问未对齐的内存,处理器需要作两次内存访问;而对齐的内存访问仅需要一次访问。 对齐规则 每个特定平台上的编译器都有自己的默认“转载 2016-10-04 10:37:01 · 180 阅读 · 0 评论 -
指针(1)
今天做笔试题的时候~又被指针给虐了一遍,想想之前对指针似懂非懂,然而并没有动手去敲过,总感觉自己懂了~?导致这几次被虐的很惨很惨~今天重拾归纳一下: *首先我们得知道指针是用来控制对象的内存地址。 1、笔试题中,会经常碰到这样的题目:向你10岁大的侄子解释一下什么是指针? 指针就是用来存储内存地址的变量,它指向单个对象的地址。 PS:C++里面提供了void * 类型的指针类型,万能指针,可原创 2016-09-28 23:01:29 · 199 阅读 · 0 评论 -
指针(2)
今天又接着来了解指针~~~ 注:本篇内容只为复习笔记 指针和const之间有什么交互呢?1、指向const对象的指针在这里我们需要知道的是,const值是不可以修改的。 所以,如果某个指针指向const对象,则不允许用指针来改变const值。 举个栗子: const double *ptr; //ptr指针可能指向一个类型为double的常量值 上面的栗子中,ptr指针本身并不是con原创 2016-10-07 21:08:07 · 192 阅读 · 0 评论 -
linux开篇
在很多人的眼里,C语言和linux常常是分不开的。这其中的原因很多,其中最重要的一部分我认为是linux本身就是C语言的杰出作品。当然,linux操作系统本身对C语言的支持也是相当到位的。作为一个真正的程序员来说,如果没有在linux下面用C语言编写过完整的程序,那么只能说他对C语言本身的理解还相关肤浅,对系统本身的认识也不够到位。作为程序员来说,linux系统为我们提供了很多理想的环境,这其中包转载 2017-02-27 13:53:07 · 182 阅读 · 0 评论 -
makefile的简单编写
对于程序设计员来说,makefile是我们绕不过去的一个坎。可能对于习惯Visual C++的用户来说,是否会编写makefile无所谓。毕竟工具本身已经帮我们做好了全部的编译流程。但是在Linux上面,一切变得不一样了,没有人会为你做这一切。编代码要靠你,测试要靠你,最后自动化编译设计也要靠你自己。想想看,如果你下载了一个开源软件,却因为自动化编译失败,那将会在很大程度上打击你学习代码的自信心了转载 2017-02-27 14:27:47 · 260 阅读 · 0 评论 -
gdb调试
版权声明:本文为博主原创文章,未经博主允许不得转载。【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 编写代码过程中少不了调试。在windows下面,我们有visual studio工具。在Linux下面呢,实际上除了gdb工具之外,你没有别的选择。那么,怎么用gdb进行调试呢?我们可以一步一步来试试看。转载 2017-02-27 14:47:53 · 166 阅读 · 0 评论 -
AT&T
【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 同样是x86的cpu,但是却可以用不同形式的汇编语言来表示。在window上面我们使用的更多是intel格式的汇编语言,而在Linux系统上面使用的更多的常常是AT&T格式的汇编语言。那什么是AT&T格式的汇编代码呢?我们可以写一个试试看。[cpp]转载 2017-02-27 14:54:29 · 216 阅读 · 0 评论