C++
小满不吃香菜
这个作者很懒,什么都没留下…
展开
-
C语言复习
之前复习C时候整理的一些word笔记,刚清理磁盘发现的,感觉扔了又可惜,以后还可以看看就整理成博客1. 二维数组维数声明错误 int a[]; //错误不知长度 int a[] = { 14}; //正确,元素个数为1 int b[][3] ={0,0} ; //正确,元素个数为1,每个元素长为3 int c[][] = {{1},{2,1}}; //错误总结:定义数组时,数组个...原创 2020-05-02 10:57:16 · 2801 阅读 · 0 评论 -
sprintf()函数使用
C 库函数 int sprintf(char *str, const char *format, …) 发送格式化输出到 str 所指向的字符串。int sprintf(char *str, const char *format, ...)例:把整数变为字符串#include <stdio.h>int main(){ char a[3] ; int m = 110...原创 2020-03-26 19:03:58 · 505 阅读 · 0 评论 -
c++ switch/case 使用 string的方法
今天看到<<大话设计模式>>这本书里面用C#语言写的代码有switch语句括号里面放的是字符串常量,于是联想到C++之前学的只能用整数,答案是想到的方法是用map处理,后来看别人博客发现C++11有onstexpr和自定义文字常量解决下面是大佬的博客:c++ switch/case 使用 string的方法...原创 2020-03-04 22:39:14 · 4489 阅读 · 0 评论 -
C++类型转换函数和转换构造函数
类型转换函数的作用是将一个类的对象转换成另一类型的数据转换构造函数的作用是将一个类型的数据转换成另一个类的对象(一)类型转换函数类型转换函数的一般形式为:operator 类型名( ) const //{实现转换的语句}如:将一个对象转换为double类型operator double( ) const{return real;}#include<iostr...原创 2020-02-14 11:36:17 · 738 阅读 · 0 评论 -
STL之transform函数
概念transform,一个区间元素交换函数。1.string小写变大写#include<iostream>#include<string>#include<algorithm>using namespace std;//仿函数class myToUpper{public: char operator()(char ch) { if...原创 2020-02-13 11:30:12 · 389 阅读 · 0 评论 -
C++创建类对象时(无参)后不加括号与加括号的区别
1、在栈中实例化对象A a;//实例化对象,会调用class A中的构造函数A b();//声明一个函数,没有传入的参数,返回值为A假如A类有x成员,那么a.x正确,因为a为对象,但b.x错误,因为b为函数2、在堆中实例化对象a、没有定义构造函数(编译器自动生成构造函数)int *a = new int;//不会将申请到的int空间初始化int *a = new int();//...转载 2020-02-13 10:30:49 · 611 阅读 · 0 评论 -
STL之find_if()函数
find_if()包含三个参数,前两个指出查找范围,第三个参数是一个函数指针或者函数对象,返回第一个查找到的迭代器例子:返回能整除elem的迭代器#include<iostream>#include<algorithm>#include<vector>using namespace std;//能整除x的class fun{public:...原创 2020-02-12 20:29:43 · 318 阅读 · 0 评论 -
STL仿函数
仿函数又称函数对象,是指重载函数调用操作符的类,其对象常称为函数对象,通过重载()实现的,优点是函数对象可以保存函数调用状态#include<iostream>using namespace std;class fun{public: void operator()(int x) { cout << x << endl; }};int...原创 2020-02-12 20:08:38 · 105 阅读 · 0 评论 -
STL常用运算符重载
bool operator<(const Person& p)const //小于运算符friend ostream& operator<<(ostream& os,const Person& p1) //输出#include<iostream>#include<string>#include<map>...原创 2020-02-12 11:10:59 · 282 阅读 · 0 评论 -
STL学习(四)关联容器
一.set(一)简介集合容器,通过实值来排序,通过实值来查找特点高效访问和map数据结构都是红黑树(节点链起来的,因此不支持随机访问)map是分键值对,set键值即实值,实值即键值,键值不能重复(二)操作排序顺序默认为从小到大加上仿函数greater之后为从大到小#include<iostream>#include<set>#include...原创 2020-02-11 22:41:07 · 176 阅读 · 0 评论 -
STL学习(三)deque——statck——queue——list——priority_queue
一. deque(一)deque与vector区别1. deque是双端数组或者双端队列,而vetor是单端的2. deque头部和尾部添加元素都比较快,而尾部添加快,头部很慢,因此vector只有push_back()和pop_back()函数,而deque多了push_front()和pop_front()函数3. deque是段连式空间插入和删除比vector快比list慢,dequ...原创 2020-02-11 14:05:26 · 249 阅读 · 0 评论 -
STL学习(二)vector
一.介绍是动态数组,是连续的空间,如果空间不够用,会申请一个更大的连续的空间,同时迭代器失效头文件为#include< vector >;二.构造函数(为了方便省略< T >)vector();无参数的构造vector(count);n个元素,和数组类似vector( n,elem );用num个val来初始化容器5个16个‘a’v...原创 2020-02-10 11:01:36 · 303 阅读 · 0 评论 -
STL学习(一)string
介绍string是专门的字符串操作的一个类,非常强大。字符串CString,QString。string 是一个类, 这个类将以上的内容封装到一起,使得字符串的操作更灵活,方式更多,管理更合理。string这个类使用的时候不用考虑内存的分配与释放,也不用担心越界崩溃,因为前辈在封装string的时候,已经把几乎所有情况都考虑到并处理了。头文件< string >,注意要using ...原创 2020-02-08 21:45:40 · 190 阅读 · 0 评论 -
文件操作
C++对文件操作文本文件外部文件和内部文件外部文件:指磁盘文件,也是通常所谓的文件。 内部文件:指在程序中运行的文件,更正式的称谓是“文件流对象”。程序中操作的是内部文件,最后保存的是外部文件。 文本文件和二进制文件文本文件:由字符序列组成,以字符(character) 为存取最小信息单位,也称“ASCII码文件”。 二进制文件:由二进制数组成。文件流类和文件流对象和文件有关的...原创 2020-02-07 19:48:12 · 267 阅读 · 0 评论