C++
文章平均质量分 62
pipi糖
这个作者很懒,什么都没留下…
展开
-
const 用法
一,修饰变量(定义常量)const int n=5;int const n=5;//与前面一种写法等价修饰的局部变量在初始化之后,变量的值不能被改变。声明同时给变量赋值。#define和const有什么区别const 定义的常数是变量是带类型的, #define 定义的只是个常数是不带类型的;#define MAX 255 // 不带类型,在预处理的时候进行替换,在程序中使用到该常量的地方都要进行拷贝替换。const float MAX = 255; // 带类型,存放在内存的静原创 2021-06-20 20:18:05 · 255 阅读 · 0 评论 -
lambad表达式
lambda表达式又称匿名函数(Anonymous function),其构造了一个可以在其作用范围内捕获变量的函数对象。声明式编程风格:就地匿名定义目标函数或函数对象,不需要额外写一个命名函数或者函数对象。以更直接的方式去写程序,好的可读性和可维护性。简洁:不需要额外再写一个函数或者函数对象,避免了代码和功能分散,让开发者更加集中精力在手边的问题,同时也获取了更高的生产率。灵活性:在需要的时间和地点实现功能闭包,使程序更灵活。lambda表达式声明和定义[ capture ] ( param原创 2021-06-20 17:36:41 · 430 阅读 · 0 评论 -
malloc/free 和 new/delete 详解
C语言提供了malloc和free两个系统函数,完成对堆内存的申请和释放。而C++则提供了两个关键字new和delete;malloc/free 和 new/delete配对使用,避免内存泄漏和多重释放。应避免交叉使用,比如malloc申请空间delete释放,new出的空间被free,因为delete对象的时候会调用析构函数,free不会,另外new/delete类对象时会调用operator new/delete函数。对于基本类型数据的申请和释放两者可以交叉使用,编译器不会报错。但对于自定义类型数据,原创 2021-04-18 20:48:07 · 452 阅读 · 0 评论 -
C++二分查找相关函数用法总结
一、lower_bound()函数函数lower_bound(begin,end,num)在begin和end中的前闭后开区间,进行二分查找。返回从begin开始的第一个大于或等于val的元素的地址。如果所有元素都小于val,则返回end的地址。注意:如果所有元素都小于val,则返回end的位置,且end的位置是越界的!!数组必须是排好序的数组(升序)。#include<algorithm>// lower_bound(a.begin(), a.end(), 11) 等同于 a.原创 2021-04-17 17:05:12 · 3384 阅读 · 0 评论 -
引用和指针
引用和指针的区别(1)指针:指针是一个变量,只不过这个变量存储的是一个地址,指向内存的一个存储单元;而引用跟原来的变量实质上是同一个东西,只不过是原变量的一个别名而已。(2) 引用不可以为空,当被创建的时候,必须初始化,初始化后就不会再发生改变;而指针可以是空值,可以在任何时候被初始化,指针的值在初始化后可以改变,即指向其它的存储单元。(3) 可以有const指针,但是没有const引用;(4) ”sizeof引用”得到的是所指向的变量(对象)的大小,而”sizeof指针”得到的是指针本身的大原创 2021-04-14 23:11:21 · 116 阅读 · 0 评论