- 博客(13)
- 收藏
- 关注
转载 Plain Old Data (POD)
POD 指的是这样一些数据类型:基本数据类型、指针、 union 、数组、构造函数是 trivial 的 struct 或者 class。POD 用来表明 C++ 中与 C 相兼容的数据类型,可以按照 C 的方式来处理(运算、拷贝等)。非 POD 数据类型与 C 不兼容,只能按照 C++特有的方式进行使用。很多时候,在开发一个 C++ 程序时,程序员会发现需要以统一的风格来操作多个不同
2017-06-02 16:36:50
1314
转载 数据类型和抽象数据类型
转自 http://blog.youkuaiyun.com/m57091003/article/details/1911806数据类型和抽象数据类型 在用高级程序设计语言编写的程序中,必须对程序中出现的每个变量、常量或表达式,明确说明它们所属的数据类型。例如,C语言中的基本数据类型有:整型、字符型、实型(包括单精度型和双精度型)及枚举型。 数据类型是一个"值"的集合和定义在此集
2017-05-31 20:00:24
1784
转载 C++成员函数的存储方式
转自 http://c.biancheng.net/cpp/biancheng/view/187.html按理说,如果用同一个类定义了10个对象,那么就需要分别为10个对象的数据和函数代码分配存储单元,如图8.4所示。图8.4 能否只用一段空间来存放这个共同的函数代码段,在调用各对象的函数时,都去调用这个公用的函数代码。如图8.5所示。图
2017-05-30 11:16:33
520
转载 漫谈递归:递归的效率问题
转载 http://www.360doc.com/content/15/1010/10/12129652_504606002.shtml递归在解决某些问题的时候使得我们思考的方式得以简化,代码也更加精炼,容易阅读。那么既然递归有这么多的优点,我们是不是什么问题都要用递归来解决呢?难道递归就没有缺点吗?今天我们就来讨论一下递归的不足之处。谈到递归就不得不面对它的效率问题。为什么递归是
2017-05-08 16:29:39
1743
转载 C语言关键字auto与register的深入理解
转载 http://www.jb51.net/article/37689.htm关键字概述很多朋友看到这儿可能会有疑问,往往其它讲C语言的书籍都是从HelloWorld,数据类型开始C语言学习的,为什么我们要从C语言的关键字开始呢?关于这点,我有两点需要说明:本章节面向的读者对象是有一定的C语言基础知识的朋友(至少应该学习过大学里的C语言程序设计等类似的课程)本章节结合了作者多年嵌
2017-05-07 10:08:35
641
转载 C、C++ register关键字
转载 http://blog.sina.com.cn/s/blog_6a1837e90101128k.htmlregister:这个关键字请求编译器尽可能的将变量存在CPU内部寄存器中,而不是通过内存寻址访问,以提高效率。注意是尽可能,不是绝对。你想想,一个CPU 的寄存器也就那么几个或几十个,你要是定义了很多很多register 变量,它累死也可能不能全部把这些变量放入寄存器吧,轮也可能轮不
2017-05-07 10:06:46
1936
转载 C++异常处理
转载自 http://www.cnblogs.com/ggjucheng/archive/2011/12/18/2292089.html引言异常,让一个函数可以在发现自己无法处理的错误时抛出一个异常,希望它的调用者可以直接或者间接处理这个问题。而传统错误处理技术,检查到一个局部无法处理的问题时:1.终止程序(例如atol,atoi,输入NULL,会产生段错误,导致程序异常退出,
2017-05-06 11:40:21
248
转载 为何浮点数(float,double)不能直接用等号比较
http://blog.sina.com.cn/s/blog_48d4cf2d0100qzfc.html很早就听说了这个说法,但一直知其然,不知其所以然。实际编程的时候有些时候记得,有些时候也忘了,但似乎也没有受到什么惩罚。昨天晚上读《深入了解计算机系统》(好书,顺便推荐)才算对此有了比较深入的理解。 书上提到gcc浮点比较的一个Bug,上网一搜,发现是个老大难问题:http://g
2017-04-27 16:30:56
8134
转载 C语言关键字volatile
转载自:http://www.cnblogs.com/yc_sunniwell/archive/2010/06/24/1764231.htmlvolatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变
2017-04-26 20:41:59
230
原创 C/C++关键字(1)
首次,要理解标识符(Identifier)的含义,顾名思义,标识符是程序员自己规定的具有特定含义(标识某个实体)的词。C语言中把标识符分为三类:关键字,预定义标识符(Predefined Identifier),用户自定义标识符。关键字是C/C++中预留的不能被用户重复定义的标识符,关键词一般用来定义、修饰用户自定义标识符。预定义标识符是C语言中系统预先定义的标识符,如系统类库名、系统
2017-04-26 20:08:34
409
转载 最大子序列、最长递增子序列、最长公共子串、最长公共子序列、字符串编辑距离
最大子序列转载于:http://www.cnblogs.com/zhangchaoyang/articles/2012070.html最大子序列是要找出由数组成的一维数组中和最大的连续子序列。比如{5,-3,4,2}的最大子序列就是 {5,-3,4,2},它的和是8,达到最大;而 {5,-6,4,2}的最大子序列是{4,2},它的和是6。你已经看出来了,找最大子序列的方法很简单,只
2017-03-01 19:58:59
273
转载 头文件和源文件的连接
文章转载于http://blog.163.com/yui_program/blog/static/18415541520115177852896/一、源文件如何根据#include来关联头文件1,系统自带的头文件用尖括号括起来,这样编译器会在系统文件目录下查找。2,用户自定义的文件用双引号括起来,编译器首先会在用户目录下查找,然后在到C++安装目录(比如VC中可以指定和
2017-03-01 09:56:24
6256
原创 判断时用比较(< or >) 替换 比对(==)防止递归越界
今天,看邓老师的数据结构,尝试写了下快速排序算法。写完之后,调试发现无法跳出递归:#include using namespace std;void swap(int& a, int& b){ int temp = a; a = b; b = temp;}void searchfast(int* A, int lo, int hi){ if(lo == hi) re
2017-02-26 10:55:35
437
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人