自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 c++重载函数和虚函数中的默认(缺省)参数

在上面的代码中,由于第一个函数带有缺省值,在函数调用时无法确定调用哪一个,导致调用的二义性。(因此我们应该避免在重载函数中使用默认参数,这很容易导致二义性)。最近在看公司的c++编码规范中,提到了重载函数和虚函数的默认参数的注意事项,这些内容有些印象但不是太清楚了,现在写一写算是复习了。

2023-02-26 10:49:36 456

原创 C++中vector迭代器失效问题以及删除所有带有某值的元素

C++中vector迭代器失效问题以及删除特定元素的问题1.迭代器的失效C++标准库(第2版)中提到:如果删除某个元素,所有容器(除了vector和deque)保证迭代器以及用以指向其他元素的引用继续保持有效。对于vector而言,只有被删除元素之前的迭代器、指针和引用有效,被删除元素以及被删除元素之后的迭代器、指针和引用均会失效。如果插入某个元素,只有list、forward_list和关联式容器(map/multimap、set/multiset)可以保证原本的迭代器和指向元素的引用继

2022-03-11 13:57:59 4349 1

原创 C++智能指针shared_ptr之别名构造函数(aliasing constructor)

别名构造函数,sp也成了sp2的共享对象的拥有者,但sp却指向ptrshared_ptr<T> sp(sp2,ptr);在讲解别名构造函数前,了解一下shared_ptr的机制shared_ptr由两个指针构成, 为便于描述,简称其中一个是 控制块指针,另一个是存储指针。当引用计数为0时,会释放控制块指针指向的堆区内存,但不会释放存储指针指向的堆区内存.。一般情况下,控制块指针和存储指针指向的是同一块堆区内存(刚刚说明的机制恰好能够保证同一块堆区内存不会被多次释放)。class Per

2022-03-07 13:41:12 1379 3

原创 ​C++类型函数

​在C和C++中,我们常见的是值函数(value function),即函数接收的参数是某些值,而且函数的返回结果也是值。至于类型函数(type function),即函数接受类型作为实参,其返回结果是一个类型。类型函数在编译时求值,标准库提供了大量的类型函数,这些函数可以帮助库的实现者及程序员编写代码时充分利用语言、标准库以及其他代码的优势类型函数是C++编译时求值机制的一部分,它允许程序进行更严格的类型检查以获取更优的性能。我们把这种用法称之为模板元编程1.内置类型函数decltypei

2022-02-22 12:19:44 3567

原创 C++多线程传参详解

目录1.线程传参的过程1.1 内置类型的实参1.1.1参数按值传递1.1.2如果想按引用传递,则需要调用std::ref1.2 类类型的实参1.2.1 传递的是左值对象1.2.2 传递的是临时对象(即右值对象)1.2.3 传递的参数需要隐式类型转换1.2.4 传递的参数是指针1.3 传入智能指针unique_ptr1.线程传参的过程下面是thread的源代码template< class Function, class... Args &g

2022-02-20 15:16:48 7358 4

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除