算法武器C++
文章平均质量分 85
c++上帝,掌控细节
小码农UU
百引
展开
-
c++奇点 模板初阶
文章目录模板初阶泛型编程函数模板函数模板概念函数模板格式函数模板的原理函数模板的实例化模板参数的匹配原则类模板类模板的定义格式类模板的实例化模板初阶泛型编程使用函数重载虽然可以实现,但是有一下几个不好的地方重载的函数仅仅只是类型不同,代码的复用率比较低,只要有新类型出现时,就需要增加对应的函数代码的可维护性比较低,一个出错可能所有的重载均出错那能否告诉编译器一个模子,让编译器根据不同的类型利用该模子来生成代码呢?如果在C++中,也能够存在这样一个模具,通过给这个模具中填充不同材料.原创 2022-02-05 13:44:53 · 581 阅读 · 34 评论 -
c++暗物质 内存管理
文章目录类与对象C++11 的成员初始化新玩法再次理解封装再次理解面向对象C/C++内存管理C/C++内存分布C语言中动态内存管理方式【面试题】C++内存管理方式new/delete操作内置类型总结玩个好玩的,malloc/new到底能申请多大的空间operator new与operator delete函数(重要点进行讲解)operator new与operator delete函数(重点) operator new与operator delete的类专属重载(了解)new和delete的实现原理内置类.原创 2022-02-04 16:15:34 · 497 阅读 · 36 评论 -
c++虫洞 STL string
文章目录STL什么是STLSTL版本原始版本P. J. 版本RW版本SGI版本STL的六大组件如何学习STLSTL的缺陷接下来我们要学的第一个容器就是string为什么学习string类?C语言中的字符串标准库中的string类string类(了解)string类的常用接口说明(注意下面我只讲解最常用的接口)1.string类对象的常见构造2.string类对象的容量操作3.string类对象的访问及遍历操作4.string类对象的修改操作5.string类非成员函数几题小菜[找字符串中第一个只出现一次的字原创 2022-01-30 14:54:02 · 1700 阅读 · 54 评论 -
c++鬼森 类和对象 友元 再谈构造 static 内部类
文章目录类与对象类的6个默认成员函数const成员取地址及const取地址操作符重载友元函数友元类再谈构造函数构造函数体赋值初始化列表explicit关键字匿名对象static成员概念特性内部类类与对象类的6个默认成员函数如果一个类中什么成员都没有,简称为空类。空类中什么都没有吗?并不是的,任何一个类在我们不写的情况下,都会自动生成下面6个默认成员函数const成员将const修饰的类成员函数称之为const成员函数,const修饰类成员函数,实际修饰该成员函数隐含的this指针,表明在原创 2022-01-26 20:24:20 · 474 阅读 · 14 评论 -
c++仙阁 类和对象 他化万古 日期类
文章目录@[toc]日期类Date.hDate.cpptest.cpp测试情况功能添加日期加天数后那个日期日期加天数日期++,++日期前置++后置++日期减天数后那个日期日期减天数日期--,--日期前置--后置--修一修bug若是-=里面的日期是负数的话若是+=里面的日期是负数的话比较运算符大于 >等于 == 大于等于 >= 小于< 小于等于 <= 不等于 != 生活实际我们思考一个问题就是日期减日期有没有意义代码Date.hDate.cpptest.cpp日期类我们要有一个原创 2022-01-21 17:01:57 · 1500 阅读 · 68 评论 -
c++冥殿 类和对象 他化自在 拷贝构造,运算符重载
文章目录类与对象类的6个默认成员函数拷贝构造函数特征赋值运算符重载 运算符重载注意:我们玩个好玩的 赋值运算符重载赋值运算符主要有四点:一个好玩的类与对象类的6个默认成员函数如果一个类中什么成员都没有,简称为空类。空类中什么都没有吗?并不是的,任何一个类在我们不写的情况下,都会自动生成下面6个默认成员函数拷贝构造函数构造函数:只有单个形参,该形参是对本类类型对象的引用(一般常用const修饰),在用已存在的类类型对象创建新对象时由编译器自动调用。特征拷贝构造函数也是特殊的成员函数,原创 2022-01-18 23:19:17 · 482 阅读 · 27 评论 -
c++妖渊 类和对象 一气三清第三清 构造与析构
文章目录类与对象类的6个默认成员函数构造函数特性析构函数特性类与对象类的6个默认成员函数如果一个类中什么成员都没有,简称为空类。空类中什么都没有吗?并不是的,任何一个类在我们不写的情况下,都会自动生成下面6个默认成员函数构造函数构造函数是一个特殊的成员函数,名字与类名相同,创建类类型对象时由编译器自动调用,保证每个数据成员都有 一个合适的初始值,并且在对象的生命周期内只调用一次。虽然名字叫构造,但是不是完成对象的构造(名字起的有点不好,但是远古神佬起的名字我们小辈的用还得用哈哈),原创 2022-01-16 22:39:49 · 385 阅读 · 21 评论 -
c++魔临 类和对象 一气三清第二清this指针
文章目录类和对象this指针this指针的引出this指针的特性【面试题】类和对象this指针this指针的引出这时就应该会有人说他们访问的是同一个函数,那么是如何访问他们各自的年月日呢this指针的特性this指针的类型:类类型* const只能在“成员函数”的内部使用this指针本质上其实是一个成员函数的形参,是对象调用成员函数时,将对象地址作为实参传递给this形参。所以对象中不存储this指针。this指针是成员函数第一个隐含的指针形参,一般情况由编译器通过ecx原创 2022-01-16 00:32:50 · 523 阅读 · 10 评论 -
c++起灵 类和对象 一气三清第一清
文章目录类和对象面向过程和面向对象初步认识类的引入类的定义类的两种定义方式类的访问限定符及封装访问限定符面试题:c++中struct和class的区别是什么面试题:面向对象三大特性 封装 继承 多态类的作用域类的实例化类对象的存储方式猜测对象中包含类的各个成员只保存成员变量,成员函数存放在公共的代码段结构体内存对齐规则类和对象面向过程和面向对象初步认识C语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。C++是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象原创 2022-01-13 13:34:55 · 692 阅读 · 18 评论 -
c++续筑 c++11小知识点
文章目录前言autoauto简介auto使用细则auto与指针和引用结合起来使用在同一行定义多个变量auto不能推导的场景1.auto不能作为函数的参数2.auto不能直接用来声明数组基于范围的for循环(C++11) 范围for的语法 范围for的使用条件 指针空值nullptr(C++11)C++98中的指针空值注意前言忘了博客怎么写的了,写几篇适应适应,现在我基本和热榜无缘了哈哈,没事也可以考虑换了,现在就当是滤文平台吧。autoauto简介在早期C/C++中auto的含义是:使用a原创 2022-01-12 13:27:26 · 893 阅读 · 31 评论 -
c++归来 内联函数
内联函数概念三级标题以inline修饰的函数叫做内联函数,编译时C++编译器会在调用内联函数的地方展开,没有函数压栈的开销,内联函数提升程序运行的效率所以为了解决被频繁调用的方式,c语言中用宏来解决的(宏是一种替换,不是调用,本质了解一下)写一个两数相加的宏但是宏要考虑的细节很多(也就是很烦),所以c++就给出了轻便的方式 内联函数 inlinedebug模式下 看一下汇编release模式下 直接优化的很彻底,没有展开的那个部分了虽然debug版.原创 2022-01-11 18:20:09 · 824 阅读 · 49 评论 -
c++筑器 c和c++静态库动态库互调
文章目录c++筑器 c与c++静态库互调vs19下静态库动态库互调C++调C第一步建静态库1.创建空项目,把 Stack.c 和 Stack.h 放进来2.修改项目属性为静态库属性调用静态库链接动态库extern “C”C调C++法一法二总结c++筑器 c与c++静态库互调vs19下静态库动态库互调C++调C我们就用以前的括号匹配做例子。当时我们是用栈来操作的,然后在我们真正需要执行的函数前把栈的函数一一的写出来,这样的的确确可以锻炼我们开始的代码能力,但是也不可以一直原创 2021-12-13 09:37:30 · 866 阅读 · 54 评论 -
算法给小码农八大排序 八奇计只为宝儿姐
文章目录八排 八奇迹排序排序的概念及其运用排序的概念排序运用==来上京东====大学排名==常见的排序算法常见排序算法的实现插入排序基本思想==但是数组肯定不是有序的,所以我们得先让数组有序==先把打印数组给剥离出来插入排序希尔排序( 缩小增量排序 ) (反正希尔牛逼)希尔排序步骤==**单组多躺**====**多组插入**====**多组一锅炖(要是分组插麻烦我们也可以一锅炖)**====**多次预排序(gap > 1)+直接插入(gap == 1)**==测直接插入排序和希尔排序的性原创 2021-12-10 14:56:07 · 2863 阅读 · 59 评论 -
C++筑器 引用生死唯一
文章目录C++ 引用(这篇博客是我现有知识只能这样写) 引用 语法层引用概念引用特性引用做参数传值传址传引用传值、传引用效率比较引用做返回值传值返回 所有的传值返回都会生成一个==拷贝==传引用返回值和引用的作为返回值类型的性能比较传值和指针在作为传参以及返回值类型上效率相差很大。修改返回对象常引用左值右值 引用 低层引用和指针的不同点:C++ 引用(这篇博客是我现有知识只能这样写)语法层和底层分开看基本没什么问题,但是一旦两原创 2021-12-08 02:34:47 · 780 阅读 · 71 评论 -
c++筑器 一把不同于C的武器 缺省参数,函数重载超底层讲解
文章目录C++ C工具开始渐渐不趁手缺省参数缺省参数概念缺省参数分类全缺省参数 所有参数都给了缺省值半缺省参数 半缺省参数必须从右往左依次来给出,不能间隔着给函数重载函数重载概念函数重载的底层原理 另一套工具也渐渐拿起 出来吧gcc g++先看看c语言支不支持重载再看看c++支不支持重载vs和Linux下的编译不同为什么c语言不支持函数重载,而c++支持函数重载?那么c++是怎么支持的呢?回顾一下编译器编译链接的过程c++是怎么支持原创 2021-12-06 07:00:00 · 1104 阅读 · 56 评论