11 2023 档案

摘要:References C++ Coding Standard 這本書的中文版不知道是不是翻譯問題,還是原作就有這種傾向,有些咬文嚼字的很不好懂。 Exceptional C++ 這本比上面那本容易理解的多,有提到 PIMPL 實作上需要注意的地方,可惜的是已經絕版了,有趣的是前面那本作者之一也是本書 阅读全文
posted @ 2023-11-29 09:31 RioTian 阅读(82) 评论(1) 推荐(0) 编辑
摘要:C++11 中推出了三种智能指针,unique_ptr、shared_ptr 和 weak_ptr,同时也将 auto_ptr 置为废弃 (deprecated)。 但是在实际的使用过程中,很多人都会有这样的问题: 不知道三种智能指针的具体使用场景 无脑只使用 shared_ptr 认为应该禁用 r 阅读全文
posted @ 2023-11-28 15:41 RioTian 阅读(112) 评论(0) 推荐(0) 编辑
摘要:References 现代C++学习——实现多类型存储std::variant 如何优雅的使用 std::variant 与 std::optional std::variant 是 C++17 中,一個新加入標準函式庫的 template 容器;他的概念基本上是和 union(參考)一樣,是一個可 阅读全文
posted @ 2023-11-28 13:10 RioTian 阅读(135) 评论(0) 推荐(0) 编辑
摘要:Modern C++ Starter Kits Share初入 C++ 搬砖,在团队中开发实际上很少亲自从零开始搭建C++的完整项目,99%时候都是使用基础架构团队或者CI/CD团队搭建好的框架。这里分享几个配置C++项目的模版,它们一般会涉及三方库管理、格式校准、单元测试、静态检查、Sanitizer配置、CI/CD配置等方面,内容比较完善。 Build 阅读全文
posted @ 2023-11-27 16:06 RioTian 阅读(70) 评论(0) 推荐(0) 编辑
摘要:在 C++ 裡頭有相當多「容器」。從原生的陣列,到標準庫 STL 的 vector, array, list, queue, map, set, …。有時候我們只是想以檢視的角度去看一個容器,或是其中一段內容,而不需要底下龐大的資料結構支撐其運作,也不想要擁有這個容器內的元素,這就是 C++20 中 阅读全文
posted @ 2023-11-27 11:01 RioTian 阅读(111) 评论(0) 推荐(0) 编辑
摘要:我们知道std::string_view可以创建std::string的一个视图,视图本身并不拥有实例,它只是保持视图映射的状态。在不修改实例的情况下,使用std::string_view会让字符串处理的性能大幅提升。实际上,对于那些连续的序列对象我们都可以创建这样一份视图,对于std::vecto 阅读全文
posted @ 2023-11-27 10:19 RioTian 阅读(205) 评论(0) 推荐(0) 编辑
摘要:本博文会介绍移动语义的形式术语和规则。并且会正式的介绍值的类别,如 lvalue、rvalue、prvalue和 xvalue,并讨论了在绑定对象引用时的作用。也会讨论移动语义不会自动传递的细节,以及decltype 在表达式调用时的微妙行为。 作为《Cpp Move Semantics》书中最复杂 阅读全文
posted @ 2023-11-24 10:59 RioTian 阅读(90) 评论(0) 推荐(0) 编辑
摘要:最近在学习 C++ Move 时,有看到这样一个代码需求:在 lambda 中,将一个捕获参数 move 给另外一个变量。 看似一个很简单常规的操作,然而这个 move 动作却没有生效。 具体代码如下 std::vector<int> vec = {1,2,3}; auto func = [=]() 阅读全文
posted @ 2023-11-24 08:57 RioTian 阅读(167) 评论(0) 推荐(0) 编辑
摘要:Mac M2 Pro Docker 24.0.6 $ docker volume inspect 14dfdb65fb7075d91b2004c979a3591df54bcc1303ff3ca96a3536f4761a19cc [ { "CreatedAt": "2023-11-21T12:52:2 阅读全文
posted @ 2023-11-23 20:58 RioTian 阅读(639) 评论(0) 推荐(0) 编辑
摘要:【Protoc】VS2019 (VS平台) 使用 CMake 编译安装、使用 Protobuf 库 本文介绍在 macOS 系统下 cmake 和 protobuf 一起使用的一种方式——使用 cmake 自动编译 proto 文件为 pb.cc 和 pb.h 文件。 protobuf protob 阅读全文
posted @ 2023-11-22 14:19 RioTian 阅读(1061) 评论(0) 推荐(0) 编辑
摘要:“Move semantics allows us to optimize the copying of objects, where we no longer need the value. It can be used implicitly (for unnamed temporary obje 阅读全文
posted @ 2023-11-22 13:28 RioTian 阅读(119) 评论(0) 推荐(0) 编辑
摘要:Reference https://www.willh.cn/articles/2022/07/13/1657676401964.html Docker默认安装在C盘: "C:\Program Files\Docker" 文件夹下。 本文将Docker安装在D:\Program Files\Dock 阅读全文
posted @ 2023-11-21 11:16 RioTian 阅读(818) 评论(0) 推荐(0) 编辑
摘要:#pragma once #include <windows.h> #include <string> // #include <iostream> class ServiceManage { public: ServiceManage() = default; ~ServiceManage() = 阅读全文
posted @ 2023-11-17 08:23 RioTian 阅读(45) 评论(0) 推荐(0) 编辑
摘要:CMake 相关问题: 即CMakeLists.txt文件中,在add_executable添加了WIN32。即当使用了WIN32标识后,就去掉了控制台,那么自然就没有信息打印出来了。 # for example add_executable(PROJECTNAMEWIN32{_SRC 阅读全文
posted @ 2023-11-15 13:36 RioTian 阅读(284) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2023-11-10 22:39 RioTian 阅读(5) 评论(0) 推荐(0) 编辑
摘要:在 C++11 之前,值类型变量的传递会导致把它完整的拷贝一份 比如说把一个 vector 作为函数返回值赋值给某个局部变量,他就会调用 vector 的拷贝构造函数创建一个完整的副本,把这个副本作为函数返回的临时变量,然后把这个临时变量赋值给那个局部变量时又会再次拷贝构造 (不过这其实会被大多数编 阅读全文
posted @ 2023-11-10 21:12 RioTian 阅读(27) 评论(0) 推荐(0) 编辑
摘要:Lambda 听起来非常的牛逼,很容易就会联想到函数式编程或者 Lambda 演算这样的东西。但是在 C++里,没那么复杂,就把它当匿名函数用就好了 HelloWorld 对于降序排序,我们可以这样写(难道 greater 不好吗) int arr[] = {2, 4, 5, 0, 3, 1}; s 阅读全文
posted @ 2023-11-10 21:10 RioTian 阅读(34) 评论(0) 推荐(0) 编辑
摘要:C++没有垃圾回收,因此 new 出来的对象都要自己管理 为了方便的管理内存,我们发现垃圾回收中引用计数的思路很简单就能在 C++中实现,而其实标准库中就已经有这样的实现,也就是智能指针 它们的头文件都是 memory shared_prt 根据引用计数自动销毁对象,构造时引用数加一,析构时引用数减 阅读全文
posted @ 2023-11-10 21:09 RioTian 阅读(26) 评论(0) 推荐(0) 编辑
摘要:MongoDB 和 MySQL 是两个可用于存储和管理数据的数据库管理系统。MySQL 是一个关系数据库系统,以结构化表格格式存储数据。相比之下,MongoDB 以更灵活的格式将数据存储为 JSON 文档。两者都提供性能和可扩展性,但它们为不同的应用场景提供了更好的性能。 了解 MySQL » 了解 阅读全文
posted @ 2023-11-10 16:50 RioTian 阅读(105) 评论(0) 推荐(0) 编辑
摘要:QuaZIP使用记录 官方文档 一、QuaZIP是什么 QuaZIP is a simple C++ wrapper over Gilles Vollant’s ZIP/UNZIP package that can be used to access ZIP archives. It uses th 阅读全文
posted @ 2023-11-06 15:58 RioTian 阅读(323) 评论(0) 推荐(0) 编辑
摘要:QML笔记(四)之QML鼠标事件 阅读全文
posted @ 2023-11-06 15:54 RioTian 阅读(29) 评论(0) 推荐(0) 编辑
摘要:https://www.llvm.org/ LLVM Essentials(Paperback) LLVM 编译器 https://www.cs.cmu.edu/afs/cs.cmu.edu/academic/class/15745-s14/public/lectures/ https://www. 阅读全文
posted @ 2023-11-01 12:57 RioTian 阅读(69) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示