![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++小记
图灵小眼睛
专注深度学习与计算机视觉,包括(Opencv,PCL3D点云数据处理),QT。
展开
-
fstream与sstream
#include 是C++的预编译语句,作用是包含对应的文件,在这里是包含C++的STL头文件fstream。 在包含了这个文件后,就可以使用fstream中定义的类及各种成员函数了。 fstream是C++ STL中对文件操作的合集,包含了常用的所有文件操作。在C++中,所有的文件操作,都是以流(stream) 的方式进行的, fstream也就是文件流file stream。 最常用的两种操作...转载 2019-05-30 09:05:34 · 1133 阅读 · 0 评论 -
.hpp与.h的区别
.hpp,本质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该.hpp文件即可,无需再将cpp加入到project中进行编译。而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj,采用hpp将大幅度减少调用project中的cpp文件数与编译次数,也不用再发布lib与dll文件,因此非常适合用来编写公用的开源库。 hpp的优...转载 2019-07-29 09:09:23 · 361 阅读 · 3 评论 -
static修饰的函数作用与意义
static修饰的函数叫做静态函数,静态函数有两种,根据其出现的地方来分类: 如果这个静态函数出现在类里,那么它是一个静态成员函数; 静态成员函数的作用在于:调用这个函数不会访问或者修改任何对象(非static)数据成员。 其实很好理解,类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创...转载 2019-07-29 11:25:30 · 1401 阅读 · 0 评论 -
C++ 11多线程学习笔记
一、多线程小实例 #include <thread> #include <iostream> void foo() { std::cout << "Hello world" << std::endl; } int main() { std::thread thread(foo); // 启动线程foo thread.jo...原创 2019-07-31 11:35:26 · 189 阅读 · 0 评论 -
C++ 11多线程学习笔记(1)
1.线程参数 当需要向线程传递参数时,可以直接通过std::thread的构造函数参数进行,构造函数通过完美转发将参数传递给线程函数。 #include<thread> #include<iostream> void foo(const char*name) { std::cout << "hello " << name <<...原创 2019-07-31 14:06:27 · 204 阅读 · 0 评论 -
C++ 11多线程学习笔记(2)
一、获取线程ID std::this_thread::get_id() #include<thread> #include<iostream> void foo(const int &a) { std::cout << "子线程 ID :" << std::this_thread::get_id() << std::end...原创 2019-08-01 14:25:50 · 356 阅读 · 0 评论