C++学习笔记
小勺挖泰山
不错,不错,就喜欢你这种没见过世面的样子!
展开
-
C++学习笔记(1)之传值、传指针、传引用的区别
1.引用和指针的区别:引用定义就要初始化、引用初始化后不能引用其他的引用、不能给引用赋空值,引用具有 1)不占空间 2)效率 3)安全优点2.什么时候使用指针,什么时候又该使用引用?指针和引用的相同点是,都可以在程序的不同地方,操作同一块物理空间。下面是使用指针的情况:是不是要装地址、有没有地址偏移操作、使用new,malloc动态申请空间时,必须使用指针。当对单一的一块空间操作时,原创 2016-12-28 22:40:01 · 522 阅读 · 0 评论 -
C++学习笔记(2)之引用详解
引用就是对象的另外一个名字。在实际的程序中,引用主要用作函数的形式参数下面用独立的对象来介绍并举例说明引用的用法:引用是一种复合类型,通过在变量名前面添加“&”符号来定义。复合类型是指用其他类型定义的类型。可以定义任何其他类型的引用,但是不能定义引用类型的引用,换句话来说就是引用初始化后不能引用其他引用。1. 引用必须用与该引用同类型的对象初始化(引用一旦定义就要进行初始化,且初始化值不能原创 2016-12-29 18:23:32 · 580 阅读 · 1 评论 -
c++程序代码使用指针调试运行出错分析
程序代码中使用指针时,几种可能出现的提示错误及其原因:1.出现0Xcccccccc、0Xcdcdcdcd错误表示指针没有初始化。2.出现0X00000000 表示指针指向空3.出现 0Xfeeefeee 表示指针所指向空间已经被删除。原创 2016-12-30 10:21:49 · 905 阅读 · 0 评论 -
c++中结构体和类的异同
结构体是对数据(变量)的封装。类是对数据(变量)和函数(方法)的封装。在C语言中,结构体中使用函数则必须使用指针,在C++中结构体可以有函数,但不推荐这样使用(一般都不用)。类是具有相同属性和行为的对象的抽象,使用类时,需先定义一个类变量,定义类的变量就是对象。定义对象时,会自动调用构造函数(所以构造函数的使用是从定义一个类时开始的)。结构体内的变量默认为public ,而类中变量原创 2016-12-30 10:30:29 · 666 阅读 · 0 评论 -
c++标准库及命名空间std
1、命名空间std C++标准中引入命名空间的概念,是为了解决不同模块或者函数库中相同标识符冲突的问题。有了命名空间的概念,标识符就被限制在特定的范围(函数)内,不会引起命名冲突。最典型的例子就是std命名空间,C++标准库中所有标识符都包含在该命名空间中。 如果确信在程序中引用某个或者某些程序库不会引起命名冲突(即库中的标识符不会在程序中代表其他函数名称),那么可以通过using原创 2016-12-30 10:54:20 · 692 阅读 · 0 评论 -
迭代器与反向迭代器
这里以链表为例:直接上代码,解释理解起来比较容易#include#include#includeusing namespace std;void Show(int n_Value){cout}int main(){list list1;list1.push_back(1);list1.push_back(2);list1.push_back(原创 2017-01-15 20:47:19 · 714 阅读 · 0 评论 -
析构函数
在类中使用指针时,需要使用new分配它自己的空间。如:Private: int* m_pAge;Public:Cperson(){m_pAge =new int(100);}new 或者 malloc后需要手动删除所使用空间,由此引入析构函数.析构函数:回收对象在堆区分配的空间,类中有new就会有析构函数.对象生命周期结束,会自动调用析构函数.析构:对象生命周期结束时,回收空间原创 2017-01-15 20:59:25 · 366 阅读 · 0 评论 -
vector原理及其成员函数使用总结
这里直接上程序,程序中有注解。可以直接copy代码,在vs中编译执行#include#include#includeusing namespace std;/*迭代器注意事项:1.添加,删除,结合的操作会使得原有的迭代器失效,因此需要重新更新赋值2.vector vec[4]--有四个vector数组,vector vec(10);//有1个数组,数组中有10个元素原创 2017-01-12 22:41:19 · 661 阅读 · 0 评论 -
c++中null和nullptr的区别
经过转定义我们会发现null其实是0表示一个整形数,而nullptr是空指针具体区别看下面例子:类a中有两个构造函数int a(int a);int a(int *a);则当你使用 *p=null时,a(p)调用的就是第一个构造函数,而我们其实是要对第二个构造函数进行调用。原创 2017-04-27 15:10:07 · 1829 阅读 · 0 评论