语言基础
文章平均质量分 66
scarftree
这个作者很懒,什么都没留下…
展开
-
STL find_if()函数
find _if 函数总结原创 2022-08-03 14:23:23 · 511 阅读 · 0 评论 -
C++ make_shared使用
C++内存分四大块全局 主函数运行前使用,初始化静态 变量第一次使用前,初始化以上两块内存都会在程序结束后自动释放堆区 由程序员管理,C++管理方法有new delete等关键字栈区 由编译器管理,存放程序的局部变量和参数因此我们需要关注堆区的内存管理。内存管理经常会碰到忘记释放造成的内存泄露。在C++中引入了智能指针,有shared_ptr,unique_ptr和weak_ptr。shared_ptr工作中shared_ptr用得比较多,今天做个总结使用智能指针,需原创 2022-01-16 17:02:24 · 29895 阅读 · 2 评论 -
默认参数与初始化列表补充
针对前天默认参数与初始化列表机制的一些深究 const类型和引用类型,在创建时,必须进行初始化。就是用参数列表初始化,移到构造函数体内部,则无法通过编译。也就是说,一旦进入构造函数体,初始化就已经完成了。那么其他内置类型或者自定义类型是不是这样的呢#includeusing namespace std;class CExample {public: int a; f原创 2018-01-20 14:22:40 · 788 阅读 · 0 评论 -
C++11初始化与构造
研究vector容器使用方法时,初始化与构造需要区分初始化不是赋值,初始化的含义是创建变量时赋予其初始值,赋值,则是将对象当前值擦除,用新值替代拷贝初始化与直接初始化是一对概念,特征为使用等号是拷贝初始化(copy initialization),把等号右侧的值赋值到新建对象中去,(右侧是值,一般在花括号内,若为对象,会先调用)不使用等号,是直接初始化(direct initializat原创 2018-01-16 22:17:52 · 389 阅读 · 0 评论 -
默认参数与初始化列表
1.构造函数的默认参数在声明时指定,(而不能只在定义构造函数时指定默认值)使得创建对象时,可以顺序缺省参数,使用默认参数初始化,例:class Box{ Box(int m = 10, int n= 20);//声明} Box::Box(int m, int n) //实现{ int a = m; int b = n;}2.在一个类中定义了全部原创 2018-01-18 22:05:50 · 5246 阅读 · 0 评论 -
聚合初始化补充
对昨天的花括号初始化做一个补充,术语应该叫做聚合初始化,补充一个Stackoverflow上的高票答案这里发生了什么叫做聚合初始化。以下是ISO规范第8.5.1节中的一个聚合的(缩写)定义: 聚合是一个没有用户声明构造函数的数组或类,没有私有或受保护的非静态数据成员,没有基类,也没有虚函数。 现在,使用{0}像这样初始化一个聚合,基本上是0整个事情的一个技巧。这是因为在使用聚合初始化时,您翻译 2018-01-17 23:17:29 · 1200 阅读 · 0 评论 -
C++创建对象时加括号与不加括号的区别
看到一篇文章对创建对象时的集中情况,梳理得很清楚 c++创建对象的语法有—– 1 在栈上创建 MyClass a; 2 在堆上创建加括号 MyClass *a= new MyClass(); 3 不加括号 MyClass *a = new MyClass;也是在对上创建,并且有一个自定义类型指针指向myclass 4.—————MyClass a();声明了一个返回值为MyClass类型转载 2018-01-17 23:13:05 · 755 阅读 · 0 评论 -
c语言基础
指针 预编译原创 2017-03-05 21:12:06 · 349 阅读 · 0 评论 -
笔试小问题整理
一些笔试漏洞原创 2017-03-11 16:48:30 · 339 阅读 · 0 评论 -
数组名与指针区别以及更多
sizeof(数组名)和sizeof(指针) strlenchar*和char[]转载 2017-03-05 23:07:27 · 320 阅读 · 0 评论 -
一个c语言规范引发的一串问题
c语言 位域原创 2017-03-04 17:19:55 · 524 阅读 · 0 评论