随笔分类 - C++
摘要:在线程启动后,我们并不知道什么时候能获取到其返回的结果。在之前的处理中,会用条件变量将共享资源给锁住,让线程完成共享变量的处理后,来通知另外一个线程。 https://zhuanlan.zhihu.com/p/493225557 #include <thread> #include <iostrea
        阅读全文
                
摘要:C++ 标准库中,有两种期望值,使用两种类型模板实现,声明在 <future> 头文件中 : 唯一期望值 (unique futures)( std::future<> )共享期望值 (shared futures)( std::shared_future<> )。 对于简单的一次性事件,比如,在后
        阅读全文
                
摘要:CMake基础教程(18) cmake 的link_libraries和target_link_libraries How to properly link libraries with cmake? CMake中有两个变量,可以获取到当前CMakeLists.txt的当前目录名(绝对路径)和当前文
        阅读全文
                
摘要:使用条件变量处理数据等待,看下面的例子: #include <mutex> #include <memory> #include <queue> #include <condition_variable> using namespace std; bool more_data_to_prepare(
        阅读全文
                
摘要:在保存文件时,会出现和保存文件名同名的文件,一般情况下会在新建的文件后面加上序号后,如test(1).dat, test(2).dat 下面用一种比较笨的方法来实现: 1 // #include <sys/io.h> 2 #include <dirent.h> 3 #include <string.
        阅读全文
                
摘要:获取系统实时时间 #include <stdio.h> #include <time.h> #include <iostream> int main() { time_t tt; time(&tt); tt = tt + 8 * 3600; // transform the time zone tm
        阅读全文
                
摘要:有时会有将cmake工程移植到另一台主机的需求,如何移植,以此做记录: 首先在目的主机的环境上安装相应的工具链,安装cmake, vscode,vscode安装插件cmake, cmake tools 1. 将工程拷贝到目标主机上,删除原有工程的build目录。 2. 配置编译工具链,vscode下
        阅读全文
                
摘要:在ubuntu上编译libzmq时,生成configure和makefile的过程中报错: libzmq-master$ ./autogen.sh autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gette
        阅读全文
                
摘要:示例: 1 #include <vector> 2 #include <string> 3 #include <iostream> 4 #include <functional> 5 6 using namespace std; 7 8 std::function<int (int)> Functi
        阅读全文
                
摘要:ZeroMQ官网 linux平台 一、安装libzmq 1、下载代码:git clone https://github.com/zeromq/libzmq.git 2、切换到最新的tag,目前是v4.3.3:git checkout v4.3.3 3、配置: cd libzmq ./autogen.
        阅读全文
                
摘要:数字转string std::to_string(int) std::to_string(long) std::to_string(long long) std::to_string(float) std::to_string(double) std::to_string(long double) 
        阅读全文
                
摘要:https://www.cnblogs.com/jiabei521/p/3335676.html
        阅读全文
                
摘要:size_t和unsigned int有所不同,size_t的取值range是目标平台下最大可能的数组尺寸,一些平台下size_t的范围小于int的正数范围,又或者大于unsigned int. 最典型的,在x64下,int还是4,但size_t是8.这意味着你在x64下最大可能开辟的数组尺寸是2^
        阅读全文
                
摘要:文章转自:https://blog.csdn.net/Liuchuang_MFC/article/details/49745703 c++全局变量在大型程序中不应出现太多: 原因: 1、使用全局变量实际上是增加了模块之间的耦合强度,同时会产生数据有效性问题,当然这种耦合强度还是可接受的,有时候也是避
        阅读全文
                
摘要:详见: 关于C++ const 的全面总结 取代#define
        阅读全文
                
摘要:参考 计算机科学的角度来看,所有的文件都是由二进制位组成的,都是二进制文件。文本文件和其他二进制文件只是格式不同而已。 C++ 标准库中还专门提供了 3 个类用于实现文件操作,它们统称为文件流类,这 3 个类分别为: ifstream:专用于从文件中读取数据; ofstream:专用于向文件中写入数
        阅读全文
                
摘要:1、C++对象的内存模型: 编译器会将成员变量和成员函数分开存储:分别为每个对象的成员变量分配内存,但是所有对象都共享同一段函数代码,如下图: 成员变量在堆区或栈区分配内存,成员函数在代码区分配内存 2、构造函数初始化列表 初始化 const 成员变量的唯一方法就是使用初始化列表。 3、静态成员变量
        阅读全文
                
摘要:作者:georgeguo链接:https://www.jianshu.com/p/f191e88dcc80来源:简书 可调用对象的几种定义 是一个函数指针 是一个具有operator()成员函数的类的对象; 可被转换成函数指针的类对象; 一个类成员函数指针; C++中可调用对象的虽然都有一个比较统一
        阅读全文
                
摘要:lambda表达式(匿名函数)的组成: 捕获子句(在 c + + 规范中也称为lambda 引导)。 参数列表可有可无. (也称为lambda 声明符) 可变规范可有可无. 异常规范可有可无. 尾随-返回类型可有可无. lambda 体。 lambda表达式以一对中括号开始,和函数定义一样,会有参数
        阅读全文
                
摘要:迭代器 迭代器 (iterator) 是 C++ 程序中常用的一种设计模式,它最重要的作用是为访问容器提供了统一的接口。 C++ STL 有许多容器,例如 vector、list、deque、map、unordered_map 。 而我们常常对不同的容器有相同的操作,比如在容器中查找一个元素、找出满
        阅读全文
                
 
                     
                    
                 
                    
                
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号