自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++多线程函数记录

1. CreatThread 产生一个线程,成功则返回一个handle,失败可调用GetLastError()获知原因 HANDLE CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, //新线程security属性,NULL表示缺省 SIZE_T dwStackSize, //新线程堆栈大小,0表示缺省:1MB LPTHREAD_START_ROUTINE lpStartA

2022-01-11 18:30:02 776

原创 C++内存管理:内存池实现

示例1:在类中提前分配一块连续的内存池,减少cookie(分配内存时产生的头尾共8个字节,用于记录分配了多少内存)对内存的消耗 class Screen { public: Screen(int x) : i(x) {} int getData() { return i; } void* operator new(size_t); void operator delete(void*, size_t); private: static Screen* freeStore;//对象的内存地址

2022-01-03 17:51:20 1188

原创 C++11新特性:Alias Template + Template Template Parameter

Alias Template :模板别名 方便使用自定义的容器,使用 #define 或 typedef 达不到同样的效果 用法: template<typename T> using Vec = vector<T, MyAlloc<T>>; //MyAlloc是自定义的分配器,allocator用于分配内存 Template Template Parameter:模板模板参数 ...

2022-01-01 13:05:13 569

原创 C++新特性:initializer_list<>

此类型用于访问 C++ 初始化列表中的值,值由array存储,类内包含一个指向array的指针。 应用: ①初始化容器: vector<int> v {1,2,3,4}; //{ } 内就用到了initializer_list ②类似 Variadic Templates 的用法,可以包含多个参数,但是参数类型必须相同 template<class T> void myPrint(initializer_list<T> vals) { for (auto

2021-12-31 19:09:40 440

原创 C++11新特性:Variadic Templates

数量不定的模板参数,后续可添加任意类型参数,函数内部递归调用,逐一取出每个元素 注意点 : 1、... 就是一个pack(包),要注意三个 ... 的位置。①模板参数包 ②函数参数类型包 ③函数参数包 2、需要一个空的重载函数来应对最后一次函数递归参数为空的情况 3、 sizeof...(包参数名) 可知包内参数个数 示例: //空重载函数 void myPrint() {} template <typename T, typename... Types> void my

2021-12-31 15:12:15 254

原创 C++迭代器与算法

C++迭代器与算法的关系

2021-12-29 21:12:51 340

空空如也

空空如也

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

TA关注的人

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