摘要: 智能指针是基于RAII的理念设计的一个资源的封装,能让类不直接管理资源,从而减少错误发生(忘记释放)。 1.unique_ptr 智能指针的理解要和资源的所有权相联系。unique_ptr代表的是独占的所有权(exclusive ownership),所封装的指针不能与其他共享,否则double f 阅读全文
posted @ 2020-07-27 02:42 linsinan1995 阅读(360) 评论(0) 推荐(0)
摘要: 左值不一定是lhs的例子 string s{}; s+s = s; 1.move 万能引用,然后转型成去掉ref的type&& template <typename T> typename remove_reference<T>::type&& move(T&& arg) noexcept { re 阅读全文
posted @ 2020-07-26 01:15 linsinan1995 阅读(277) 评论(0) 推荐(0)
摘要: 1.RAII 和 rule of three C++编程很多时候需要手动管理资源,其中包括资源的获取,使用和释放,而手动对资源释放是很容易出错的一个环节。 根据C++的特性,当局部对象的生命周期结束时,会调用析构函数,因此借由类的析构函数对资源进行释放就是RAII的工作原理。 但是这段代码仍然存在问 阅读全文
posted @ 2020-07-25 05:01 linsinan1995 阅读(447) 评论(0) 推荐(0)
摘要: 基础 感光度ISO 对光线的敏感程度 感光度高 → 噪点多画质差 焦距55mm 能捕捉景物的大小 定焦 → 光圈大,画质可能好 光圈 f1.4 进光量的大小 控制景深,数值越小光圈越大景深越大 进光量大 → 到达正常曝光的速度快(快门速度) 阅读全文
posted @ 2020-07-21 18:52 linsinan1995 阅读(111) 评论(0) 推荐(0)
摘要: 1.list 1.1.从尾到头打印链表 方法: 递归 遍历后翻转 stack vector<int> printListFromTailToHead(ListNode* head) { if (!head) return {}; vector<int> res {}; while(head) { r 阅读全文
posted @ 2020-07-21 16:44 linsinan1995 阅读(126) 评论(0) 推荐(0)