
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 · 1214 阅读 · 0 评论 -
.hpp与.h的区别
.hpp,本质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该.hpp文件即可,无需再将cpp加入到project中进行编译。而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj,采用hpp将大幅度减少调用project中的cpp文件数与编译次数,也不用再发布lib与dll文件,因此非常适合用来编写公用的开源库。hpp的优...转载 2019-07-29 09:09:23 · 390 阅读 · 3 评论 -
static修饰的函数作用与意义
static修饰的函数叫做静态函数,静态函数有两种,根据其出现的地方来分类:如果这个静态函数出现在类里,那么它是一个静态成员函数;静态成员函数的作用在于:调用这个函数不会访问或者修改任何对象(非static)数据成员。 其实很好理解,类的静态成员(变量和方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接去访问;非静态成员(变量和方法)属于类的对象,所以只有在类的对象产生(创...转载 2019-07-29 11:25:30 · 1459 阅读 · 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 · 224 阅读 · 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 · 252 阅读 · 0 评论 -
C++ 11多线程学习笔记(2)
一、获取线程IDstd::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 · 401 阅读 · 0 评论