
C++笔试常考点
文章平均质量分 74
海螺上的斑点
没有什么拿来炫耀的时候,就好好努力吧。
展开
-
C++primer 3.3 标准库类型 vector
一、vector对象的定义vector 是同一种类型的对象的集合,每个对象都有一个对应的整数索引值。和string一样,标准库将负责管理与存储元素相关的内存。vector称为容器,里面所有的对象必须同一类型。使用vector之前,必须包含相应的头文件 # include using std::vectorvector是一个模板,不是数据类型。使用模板可以编写一个类定义或函数定义,用于多个不原创 2015-05-05 14:09:59 · 506 阅读 · 0 评论 -
C++primer 4.4 数组指针和指针数组(转)
转自:http://www.cnblogs.com/mq0036/p/3382732.html优先级:()>[]>*一、数组指针(p也称行指针,只是一个指针)定义: int (*p)[n];( )优先级高,首先说明p是一个指针,指向一个整型的一维数组;这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个整型数据的长度(4*n),如果是char 型那么就是(1*n)。如转载 2015-05-18 14:48:38 · 884 阅读 · 0 评论 -
C++Primer3.5标准库类型bitset---字节存储排序:大端和小端的判别及转换(转载)
http://www.cnblogs.com/Romi/archive/2012/01/10/2318551.html(其实不是很懂)当前的存储器,多以byte为访问的最小单元,当一个逻辑上的地址必须分割为物理上的若干单元时就存在了先放谁后放谁的问题,于是端(endian)的问题应运而生了,对于不同的存储方法,就有大端(big-endian)和小端(little- endian)两个描述。字节排序按转载 2015-05-18 11:06:27 · 1128 阅读 · 0 评论 -
C++primer 4.3 C风格字符串--字符数组(strlen、strcpy、strcat)上
简介建议一C风格字符串1C风格字符串简介二C风格字符串的使用三C风格字符串的标准库函数四尽可能使用标准库类型string简介1. C风格字符串是以空字符null结束的字符数组;2. 字符串的比较和比较结果都须使用标准库函数strcmp进行建议在使用处理C风格字符串的标准库函数strlen时,不要忘记字符串结束符null,一定要加上!!!传递给标准库函数strcat和strcpy的第一原创 2015-05-12 16:24:25 · 904 阅读 · 0 评论 -
C++ primer 4.3 C风格字符串--strcpy、strlen、strcpt之strcpy函数(下)
转载自 :http://www.cnblogs.com/chenyg32/p/3739564.html例子 4 在很多情况下,题目会要我们自己写一个strcpy 函数,而不是用标准库里面的已知strcpy函数的原型是:char *strcpy(char *dst, const char *src);实现strcpy函数解释为什么要返回char *假如考虑dst和src内存重叠的情况,strc转载 2015-05-13 14:23:31 · 903 阅读 · 0 评论 -
C++primer6.1--6.10 语句、变量 break、default
简介一声明语句二复合语句1块语句2语句的作用域三if 语句1if 语句四switch 语句1switch 语句的使用2switch语句中的控制流重点实际上程序不是只会执行匹配的case标号相关联的语句程序从该点匹配点开始执行并跨越case 边界继续执行其他语句直到switch 结束或遇到break语句为止3慎用break 语句4default 标号5switch 表达式与原创 2015-05-17 19:43:10 · 614 阅读 · 0 评论 -
参数传递三种方式
链接:http://blog.youkuaiyun.com/mishifangxiangdefeng/article/details/7213865参数传递三种方式1.按值传递[cpp] view plaincopyvoid swap(int a, int b) { int temp = a;转载 2015-06-24 17:07:33 · 1251 阅读 · 0 评论 -
字符数组、字符串与string类的区别
链接:http://blog.youkuaiyun.com/mishifangxiangdefeng/article/details/80252361.字符数组、字符串与string类的区别例1:[cpp] view plaincopyint main() { string s; cin>>s;//输转载 2015-06-24 17:04:24 · 2422 阅读 · 0 评论 -
C++9.5 vector/list/queue容器的区别与选用
简介===============================================================================================================一、引言分配连续存储元素的内存空间会影响内存分配策略和容器对象的开销。容器是否连续存储还会显著影响:在容器中间位置添加或删除元素的代价;** 指向容器元素的随机访问的代原创 2015-06-08 14:45:46 · 4904 阅读 · 0 评论 -
C++primer 5.8sizeof 操作符--上(不同类型所占用的内存大小字节)
简介sizeof 的总结: http://blog.youkuaiyun.com/xyh_adolph/article/details/21187783sizeof计算数据(包括数组、变量、类型、结构体等)所占内存空间,用字节数表示,返回值类型是size_t对char 类型或值为char 类型的表达式做sizeof 操作保证得1;对引用类型做sizeof 操作将返回存放此引用类型对象所需的内存空间大小;对原创 2015-05-16 15:19:14 · 863 阅读 · 0 评论 -
7.2.2 引用形参、const类形参(重要)
简介============================================================================================导读:复制实参并不是在所有的情况下都适合,不适宜复制实参的情况如下,在如下的情况中,有效的解决办法是将形参定义为引用或指针类型:当需要在函数中修改实参的值时;当需要以大型对象作为实参传递时原创 2015-05-20 19:43:42 · 5579 阅读 · 0 评论 -
C++9.4 vector容器的自增长(size、capacity、reserve)
简介================================================================================================================================================================一、vector容器的自增长* 在容器对象中insert或原创 2015-06-08 10:16:01 · 2210 阅读 · 0 评论 -
C++7.2.3 、7.2.4vector形参、数组形参
简介======================================================================================================一、vector 类型的形参通常,函数不应该有vector或其他标准库容器类型的形参,调用含有普通的非引用vector形参的函数将会复制vector的每一个元素。从避免复制vector的角度出发原创 2015-05-25 10:17:21 · 979 阅读 · 0 评论 -
C++7.2.5数组做实参---避免越界
简介============================================================================================================一、传递给函数的数组的处理1、处理数组的程序要确保程序停留在数组的边界内非引用数组形参的类型检查只是确保实参是和数组元素具有相同类型的指针,而不会检查实参实际上是否指向指定大小的数原创 2015-05-25 13:50:58 · 838 阅读 · 0 评论 -
编写类String的构造函数、析构函数和赋值函数(转载)
编写类String的构造函数、析构函数和赋值函数(转载)C++代码 class String { public: String(const char *str = NULL);// 普通构造函数 String(const String &other); // 拷贝构造函数 ~ String(void); // 析构函数转载 2015-07-09 15:25:40 · 769 阅读 · 1 评论 -
C++ 7.7 类的成员函数、this 指针、默认构造函数、默认初始化(总结)
简介===============================================================================================================================一、类的成员函数1、成员函数的定义成员函数也包含以下四个部分:函数返回类型;函数名用逗号隔开的形参表(可能是空的);原创 2015-05-26 14:29:15 · 1568 阅读 · 0 评论 -
C++ 8.1 面向对象的标准库(未完)
简介=============================================================================================一、面向对象的标准库C++的输入/输出由标准库提供,标准库定义了一族类型,支持对文件和控制窗口等设备的读写(IO)。还定义了其他一些类型,使string对象能够像文件一样操作,从而使我们无须IO就能实现数据与字符原创 2015-05-29 10:54:42 · 587 阅读 · 0 评论 -
C++primer 4.4 多维数组、指针数组、数组指针(未完)
简介列表内容================================================================================一、多维数组的初始化1、初始化//几种初始化int ia[3][4]={{0,1,2,3},{4,5,6,7},{8,9,2,1}};int ia2[3][4]={0,1,2,3,4,5,6,7,8,9,2,1};i原创 2015-05-18 14:40:09 · 524 阅读 · 0 评论 -
C++primer 标准库类型和内置类型默认的初始化
//1.标准库类型和内置类型动态数组默认的初始化string *psa=new string[10];// 10个空的stringint *pia=new int[10];//10个没有初始化的元素int *pia2=new[10]();//加上圆括号之后就会要求编译器对数组做值初始化,在本例中把元素都设置为0.//这两个new表达式都分配了含有10个对象的数组,其中第一个数组是string类原创 2015-05-12 16:44:52 · 1023 阅读 · 0 评论 -
C++primer 2.5const限定符(未完)
当出现指针、引用一起的时候,我们不容易区分到底是指针还是引用。int main(){int i=42;int *p;int *&r=p;//r是一个对指针p的引用r=&i;//r引用了一个指针,因此给r赋值&i 就是令p指向i*r=0;//解引用r得到i,也就是p指向的对象,将i值改为0}最简单的方法就是从右到左阅读r的定义。离变量最近的符号(此例中是&r的符号&)对变量的类型有最直接的原创 2015-05-07 15:44:09 · 453 阅读 · 0 评论 -
C++primer 4.3 动态数组 、 动态内存分配 new delete
简介建议一动态数组的创建和初始化普通数组的限制动态数组与普通数组的区别动态数组定义初始化动态分配的数组1 标准库类型和内置类型初始化值的区别const 对象的动态数组允许动态分配空数组动态空间的释放二动态数组的使用简介每一个程序在执行时都占用一块可用的内存空间,用于存放动态分配的对象,此内存空间称为程序的自由存储区或堆**当你定义一个动态数组时,就已经给你分配了内存空原创 2015-05-12 10:36:55 · 1287 阅读 · 0 评论 -
C++primer 4.2 指针和const限定符(3)
简介建议- 指向const对象的指针- const指针- 指向const对象的const指针疑问p112一指向const对象的指针二const 指针三指向const对象的const指针四指针和typedef五理解复杂的const类型的声明简介建议- 指向const对象的指针 1. 可以初始化为const和非const的对象; 2. 把非const对象的地址赋给指针时,不允许原创 2015-05-11 15:21:27 · 686 阅读 · 0 评论 -
C++primer 3.5标准库bitset类型(5.3 位操作符)
重点一bitste对象的定义和初始化1bitset 对象的简介2bitset对象的定义和初始化2用unsigned 值初始化bitset 对象问题在bitset 对象中位数是怎么排的高阶和低阶是怎么样的3用string对象初始化bitset 对象4输出bitset里面的元素二bitste对象上的操作1测试整个bitset对象2访问bitset对象中的位3对整个bitset 对象原创 2015-05-14 11:22:34 · 724 阅读 · 0 评论 -
C++primer 2.2 变量--全局与局部
变量一、变量a. 变量提供一个具名的、可供操作的存储空间; b. c++中每个变量都有其数据类型,数据类型决定着变量所占的内存空间大小和布局方式,该空间能存储的值的范围,以及能够进行的运算。*变量定义变量列表初始化 初始化不是赋值,初始化的含义是创建变量时赋予其一个初始值,而赋值的含义是把对象的当前值擦除,而以一个新值代替。 初始化的几种方式: a. int test=0;原创 2015-04-30 11:19:34 · 565 阅读 · 0 评论 -
C++7.5 局部对象、局部变量、static局部变量
简介==============================================================================================================一、局部对象在C++中,每个名字都有作用域,而每个对象都有生命期;名字的作用域指的是知道该名字的程序文本去(哪些地方可以用);对象的生命期则是在程序执行过程中对象存在的时间原创 2015-05-25 20:43:24 · 787 阅读 · 0 评论 -
C++ 7.8.1 重载函数
简介- 出现在相同作用域中的两个函数,如果具有相同的名字而形参不同,则称为 重载函数。(前提是在相同的作用域内!!!!)- 任何程序都仅有一个main函数,main函数不能重载- 一般的作用域规则同样适用于重载函数名。如果局部地声明一个函数,则该函数将屏蔽而不是重载在外层作用域中声明的同名函数。- 每一个版本的重载函数都应该在同一个作用域中声明。===========================原创 2015-05-28 09:26:49 · 433 阅读 · 0 评论 -
C++ 7.9 指向函数的指针
简介===========================================================================================================一、指向函数的指针函数指针是指指向函数而非指向对象的指针,像其他指针一样,函数指针也指向某个特定的类型。函数类型由其返回类型以及形参表确定,而与函数名无关;b原创 2015-05-29 10:18:15 · 519 阅读 · 0 评论 -
C++12.3 (下) 类作用域中名字查找(局部和全局)
参考**12.3 (上 ) 类作用域12.1.3成员函数重载和Screen类定义========================================================================================================================================一、类作用域中的名字查找首先,在使用该名原创 2015-06-18 17:07:13 · 609 阅读 · 0 评论 -
C++primer 5.3位操作符
简介===================================一、位操作符1、位操作符简介位操作符使用整型的操作数。位操作符将其整型操作数视为二进制位的集合,为每一位提供检验和设置的功能;另外,类操作符还可以用于bitset类型的操作数;位操作符的操作数的整数的类型可以是有符号的也可以是无符号的。如果操作数是负数,则位操作符如何处理其操作数的符号依赖于机器。强烈建议使用unsi原创 2015-05-14 11:11:20 · 365 阅读 · 0 评论 -
C++primer 5.3 位操作符(~、^、&、|)(未完)
简介使用unsigned 整型操作数,无符号的好处就是所有的位都是数字位,没有符号位。 unsigned char bits = 0227。类似于bitset 标准库类型(3.5节),操作之前都先将整型数转换为二进制数,转换成里面的数值只有0和1 -=======================================================一、位操作符原创 2015-05-15 10:09:36 · 633 阅读 · 0 评论 -
轻松搞定面试中的二叉树题目
版权所有,转载请注明出处,谢谢!http://blog.youkuaiyun.com/walkinginthewind/article/details/7518888树是一种比较重要的数据结构,尤其是二叉树。二叉树是一种特殊的树,在二叉树中每个节点最多有两个子节点,一般称为左子节点和右子节点(或左孩子和右孩子),并且二叉树的子树有左右之分,其次序不能任意颠倒。二叉树是递归定义的,因此,与二叉树转载 2015-06-24 20:32:48 · 551 阅读 · 0 评论