
C++
江小北
每想你一次,天上飘落一粒沙,从此形成了撒哈拉。每想你一次,天上就掉下一滴水,于是形成了太平洋。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
指针和引用
1.指针和引用的定义和性质区别: (1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。如: int a=1;int *p=&a; int a=1;int &b=a; 上面定义了一个整形变量和一个指针变量p,该指针变量指向a的存储单元,即p的值是a存储单元的地址。 而下面2句定义了一个整形变量a和这个整形a的引用b,事实上a和b是同一个东西,在内存占有同一个存储单元。 (2)可以有const指针原创 2021-10-06 20:22:56 · 489 阅读 · 0 评论 -
C++容器适配器
容器适配器是一个封装了序列容器的类模板,它在一般序列容器的基础上提供了一些不同的功能。之所以称为适配器类,是因为它可以通过适配容器现有的接口来提供不同的功能。 这里有 3 种容器适配器: stack<T>:是一个封装了 deque<T> 容器的适配器类模板,默认实现的是一个后入先出(Last-In-First-Out,LIFO)的压入栈。stack<T> 模...原创 2020-03-14 10:25:48 · 188 阅读 · 0 评论 -
C++ 序列容器
1.序列式容器 大致包括: array<T,N>(数组容器):表示可以存储N 个 T 类型的元素,是 C++ 本身提供的一种容器。此类容器一旦建立,其长度就是固定不变的,这意味着不能增加或删除元素,只能改变某个元素的值; vector<T>(向量容器):用来存放 T 类型的元素,是一个长度可变的序列容器,即在存储空间不足时,会自动申请更多的内存。使用此容器,在尾部增...原创 2020-03-13 10:26:59 · 193 阅读 · 0 评论 -
C++之string类
1.从屏幕读入输入的字符串 string stuff; cin >> stuff; getline(cin, stuff); #该函数可将整行的所有字符读到字符串中。在读取字符时,遇到文件结束符、分界符、回车符时,将终止读 #入操作,且文件结束符、分界符、回车符在字符串中不会保存;当已读入的字符数目超过字符串所能容纳...原创 2020-03-07 21:01:42 · 447 阅读 · 0 评论 -
C++ 函数模板
比如定义了一个交换两个int值的函数,假设要交换两个double值,则一种方法是复制原来的代码,并用double替换所有的int,如果需要交换两个char值,可以再次使用同样的技术。这种操作修改将浪费时间。C++模板函数功能能自动完成这一过程,可以节省时间,且更可靠。 template <typename AnyType> void Swap(AnyType &a, ...原创 2020-03-06 12:06:36 · 144 阅读 · 0 评论 -
C++引用变量
通过将引用变量用作参数,函数将使用原始数据,而不是其副本。 1.创建引用变量 C和C++使用&符号来指示变量的地址。C++给符号赋予了另一个含义,将其用来声明引用。例如,将rodents作为rats变量的别名 int tats; int & rodents = rats; 其中,&不是地址运算符,而是类型标识符的一部分。就像声明中的char* 指的是指向char的指针一样,...原创 2020-02-09 22:54:03 · 281 阅读 · 0 评论 -
C++ 内联函数
使用内联函数是一种用空间换时间的措施,若内联函数较长,且调用太频繁时,程序将加长很多。因此只有较短的函数才定义为内联函数。一般情况下,对内联函数有如下的限制: 1.不能有递归 2.不能包含静态数据; 3.不能包含循环 4.不能包含switch和goto语句 5.不能包含数组 在函数声明前加上关键字inline; 在函数定义前加上关键字inline ...原创 2020-02-07 11:17:20 · 359 阅读 · 0 评论 -
C++ 函数指针
1.获取函数的地址。使用函数名,后面不跟参数即可。如果think()是一个函数,则think就是该函数的地址。 2.声明一个函数指针。通常,要声明指向特定类型的函数的指针,可以首先编写这种函数的原型,然后用(*pf)替换函数名。这样pf就是这类函数的指针。*pf (int)意味着pf()是一个返回指针的函数,而(*pf) (int)意味着pf是一个指向函数的指针。因为括号的优先级最高。正确声明o...原创 2020-02-07 10:41:11 · 147 阅读 · 0 评论 -
C++之STL库简单介绍
1. sort() 可以自己定义新的结构体数组排序,sort第三个参数可以设置为根据哪个值排序 int a[] = {2,-1,3,6,4,9,5}; int n = sizeof(a) / sizeof(int); sort(a, a + n); for (int i = 0; i<n; i++) { cout <<a[i] << " "...原创 2020-01-16 20:57:58 · 264 阅读 · 0 评论