
C++
文章平均质量分 69
c++由浅入深
Q渡劫
不会写还不滚去看官方文档
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
关于使用template时的错误注意
上面的写法中,第三种是很明显的错误,原因是当前的形参是一个容器,所以使用container.cbegin()返回的是一个指向容器中第一个元素的迭代器,但是如果使用int*去接的话很明显出错,即使是加了const类型的指针,所以从这个角度来看,迭代器和指针差不多,但是从根本上来说,有本质的区别。也即编译器当前的是什么类型的名称,但是在类中不需要使用typename,如果不是类中,而是在函数中,则要一定使用typename自动推断当前的类型名称。原创 2023-11-10 22:08:57 · 429 阅读 · 0 评论 -
C++中的运算符重载
C++中可以重定义或重载大部分 C++ 内置的运算符。这样,我们就能使用自定义类型的运算符。重载的运算符是带有特殊名称的函数,函数名是由关键字 operator 和其后要重载的运算符符号构成的。与其他函数一样,重载运算符有一个返回类型和一个参数列表。原创 2023-10-10 22:23:18 · 270 阅读 · 0 评论 -
c++ 中创建对象的几种方式,以及这几种方式之间的区别
静态分配:使用对象名在栈中分配内存空间,并初始化对象。例如:`Object obj;2. 动态分配:使用 new 运算符在堆中分配内存空间,并返回指向对象的指针。例如:`Object *obj = new Object();3. 拷贝构造函数:使用已存在的对象创建新对象,两者成员变量值相同。例如:`Object obj2(obj1);4. 移动构造函数:使用已存在的对象创建新对象,原对象的成员变量值被移动(std::move() 函数)。原创 2023-04-20 22:29:14 · 1407 阅读 · 0 评论 -
lambda表达式
是一种内建的匿名函数,第一个中括号表示匿名的函数名,第二个()表示要传递的形参,要取的值是什么类型就定义什么类型,{}表示函数体,具体执行的操作。所以 lambda 就是把函数的实现嵌套在语句中lambda 表达式 c++11才支持[]里面啥都不写 lambda不能识别 外部数据[=] lambda能对 外部数据 读操作,= 表示单向赋值[&] lambda能对 外部数据 读写操作。原创 2023-04-16 22:39:17 · 356 阅读 · 0 评论 -
适配器详解
适配器简介原创 2023-04-16 12:23:03 · 616 阅读 · 0 评论 -
map容器(重要)
Map容器中所有的元素都会根据元素的键值自动实现排序。Map中所有的元素都是pair,同时拥有实值和键值,而前面的 set 只是拥有 键值,pair 中的 第一个元素是键值,而第二个值是 实值。Map 中是不允许有两个相同的键值的,就像一个学校中一样,学生的学号就是键值,而学号对应的学生的具体信息就是实值。而且,我们不能通过Map 的迭代器改变map的键值,因为map 的键值关系到 map 元素的排列规则,任意改变map 的键值将会严重破坏 map 的组织。原创 2023-04-14 22:01:48 · 1045 阅读 · 0 评论 -
set/multiset容器
但是 set 函数的排序规则默认是按照从小到大,所以使用仿函数更改排序规则从 大到小//仿函数实质上是一个类,使用仿函数更改排序规则 class MyCompare {public :} };it!it ++) {it!it ++) {//使用仿函数更改排序规则 s1 . insert(30);原创 2023-04-14 21:03:09 · 330 阅读 · 0 评论 -
list容器
list容器简介原创 2023-04-14 11:58:22 · 1034 阅读 · 0 评论 -
statck容器 和 queue容器
用于购票服务等。原创 2023-04-14 11:54:17 · 111 阅读 · 0 评论 -
deque容器
deque是双端动态数组,可以在容器的两端分别做元素的增加和删除,但是vectoe是单端动态数组,只可以在容器末尾进行增加和删除元素操作。原创 2023-04-13 10:05:11 · 128 阅读 · 0 评论 -
main.cpp、mainwindow.cpp、设置窗口大小、按钮控件
【代码】QT设置按钮操作。原创 2023-04-13 09:48:01 · 1612 阅读 · 0 评论 -
vector容器
vector 和 arry 非常相似,唯一存在的不同是 vector 是动态分配内存空间,但是 arry 是静态的。原创 2023-04-12 11:54:21 · 744 阅读 · 0 评论 -
string容器
查找网站 ip 地址中的所有的字符串 sex,并对字符串 sex 进行替换。将ip地址中的每一个字符串按照 : 提取。原创 2023-04-12 11:50:46 · 706 阅读 · 0 评论 -
数组类模板
在 qtcreate下先创建03_code的项目,然后右键点击03_code添加新文件,点击头文件,点击Choose。命名为 myarry.hpp,其中 .hpp是头文件和源文件结合的一种,一般是。设计一个数组模板类(MyArray),完成对不同类型元素的管理。原创 2023-02-22 11:43:20 · 654 阅读 · 2 评论 -
友元的学习
类的主要特点之一是数据隐藏,即类的私有成员无法在类的外部作用域之外访问,但是,有时候需要在类的外部访问类的私有成员,这个时候就需要使用友元函数。友元函数是一种特权函数,c++允许这哥特权函数访问私有成员,这一点从现实生活中也可以很好的理解,比如你的加,有客厅,有你的卧室,那么你的客厅是 public 的,所有来的人都可以进去,但是你的卧室是私有的,也就是说你能进去,但是你也可以允许你的闺蜜和好友进去。因此,我们可以把一个全局函数、某一个类中的成员函数、甚至整个类声明为友元。😁。原创 2023-02-21 14:55:10 · 456 阅读 · 2 评论 -
单例模式设计(面试题)
单例模式是一种常用的软件设计模式,在它的核心结构中只包括一个被称为单例的特殊类。通过单例模式模式可以保证系统中一个类只有一个实例,而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果在系统中希望某个类的对象只能存在一个,单例模式就是最好的解决方案!private://保存唯一实例的地址因为只有将整个类的程序执行完,才能知道给该类分配多大的空间public://获得唯一的实例地址return p;//用户自定义的操作函数cout原创 2023-02-20 18:38:46 · 607 阅读 · 0 评论 -
析构函数、拷贝构造
函数名和类名相同,在类名前加~,没有返回值类型,没有函数形参(不能重载)当对象生命周期结束的时候,系统会自动调用析构函数先调用析构函数,再释放对象的空间。原创 2023-02-20 11:04:08 · 394 阅读 · 0 评论