c++
冬日and暖阳
Github: https://github.com/pengfeidip
邮箱:pengfeidip@qq.com
展开
-
c++ vector中push_back和emplace_back的区别
转载整理自: https://blog.csdn.net/xiaolewennofollow/article/details/52559364一、二者区别push_back的内部流程无右值引用之前调用构造函数,构造一个临时对象调用拷贝构造函数,复制临时对象到容器的末尾释放临时对象有了右值引用之后4. 调用构造函数,构造一个临时对象5. 调用移动构造函数 (std::),移动临时对象到容器的末尾emplace_back的内部流程直接在容器末尾利用构造函数创建对象二、举例说明#i转载 2022-03-09 13:21:00 · 372 阅读 · 0 评论 -
c++ 常见面试题/基础知识
https://zhuanlan.zhihu.com/p/470972286原创 2022-02-24 22:29:52 · 354 阅读 · 0 评论 -
c++ / opemmp
问题:开启 openmp 编译错误 c1001原因for 训练里面有return操作。在多线程里面,每个线程运行的时候都不能return,必须把每个循环完整的跑完原创 2021-11-22 11:26:54 · 538 阅读 · 0 评论 -
c++虚函数以及多态
https://blog.csdn.net/i_chaoren/article/details/77281785转载 2021-08-22 16:32:55 · 77 阅读 · 0 评论 -
c++ vector 删除指定元素
c++ vector 根据约束条件删除元素 std::vector<int> vec; vec.push_back(1); vec.push_back(10); vec.push_back(1000); vec.push_back(200); for (auto iter = vec.begin(); iter != vec.end(); iter++) { if ((*iter) > 800) { //std::cout << "删除了whole中原创 2021-05-27 18:00:09 · 243 阅读 · 0 评论 -
利用visual studio查看DLL的依赖、以及内部包含的函数
工具:vs自带的developer command for VS2015命令dumpbin /EXPORTS aaa.dll // 查看内部函数dumpbin /DEPENDENTS aaa.dll // 查看相关依赖原创 2021-05-24 09:09:54 · 1148 阅读 · 0 评论 -
c++ map/字典 元素遍历
转自:https://blog.csdn.net/u010429424/article/details/75332700#include <iostream>#include <map>using namespace std;int main() { map<int, int> _map; _map[0] = 1; _map[1] = 2; _map[10] = 10; map<int, int>::ite原创 2021-05-07 15:30:20 · 2157 阅读 · 0 评论 -
在子函数中申请内存/二级指针/双重指针
在函数体内申请内存。https://blog.csdn.net/shwan_ma/article/details/105904453一、解决办法1.1 在函数体内申请完内存后,将地址返回int* test(){ int *p = (int*)malloc(sizeof(int)*100); return p;}1.2 用二级指针修改指针指向地址void test(int **ptr){ *ptr = (int*)malloc(sizeof(int)*100);}二、易错点2.1转载 2021-05-06 09:35:15 · 362 阅读 · 0 评论 -
c++ /cpp 问题:std 没有成员函数 accumulate
问题std 没有成员函数 accumulate解决需要包含头文件 #include <numeric>原创 2021-04-20 11:18:44 · 3291 阅读 · 0 评论 -
c++/cpp 计时函数/高精度计时
#include <iostream>#include <ctime>#include <ratio>#include <chrono>int main(){auto start = std::chrono::high_resolution_clock::now();Facevisa_TensorRT_Inference_DET_Batch(param->det_handle, image_parts, det_param, temp_d原创 2021-04-19 13:18:15 · 1605 阅读 · 0 评论 -
c++/vs/visual studio在Release模式下进行调试/debug
c++/vs/visual studio在Release模式下进行调试步骤项目依赖:被调试的两个工程需要有项目依赖‘每个需要调试的项目c/c++ -> 常规 -> 调试信息格式-> 程序数据库(/Zi)c/c++ -> 优化-> 禁用c/c++ -> 优化-> 全程序优化 -> 否连接器 -> 调试 -> 生成调试信息 -> 优化以便于调试 (/DEBUG)...原创 2021-03-30 10:49:38 · 453 阅读 · 0 评论 -
c++ 计算程序使用的时间
#include <iostream>#include <iomanip>#include <vector>#include <numeric>#include <chrono> volatile int sink;int main(){ std::cout << std::fixed << std::setprecision(9) << std::left; for (auto转载 2021-03-01 18:22:31 · 260 阅读 · 0 评论 -
c++ const和constexpr
https://www.jianshu.com/p/34a2a79ea947const 告诉编译器,有一个变量被初始化了且不能被修改,仅此而已constexpr告诉编译器,有一个变量被初始化了且不能被修改,编译器可以大胆的把这个变量当做常量去进行优化...原创 2021-02-22 09:01:19 · 96 阅读 · 0 评论 -
lib和.dll是什么,他们之间的区别是什么
问题我知道dll和lib包含了程序运行时必不可少的代码,但是除此之外我对lib和dll 了解不多。编译器究竟为什么生成这两个文件,直接把代码包含在exe里面不是更简单吗?lib和dll又有什么区别?I know very little about DLL’s and LIB’s other than that they contain vital code required for a program to run properly - libraries. But why do compilers翻译 2021-01-26 17:56:32 · 1165 阅读 · 1 评论 -
c++ 预处理器常用变量
NDEBUG_CONSOLE_CRT_SECURE_NO_WARNINGS原创 2020-12-08 13:43:35 · 216 阅读 · 0 评论 -
visual studio(vs)在Release模型下进行调试
C/C++ > 常规 > 调试信息格式 > 程序数据库(/Zi)C/C++ > 优化 > 优化 > 禁止(/Od)C/C++ > 优化 > 全程序优化 > 否链接器 > 调试 > 生成调试信息 > 是 (/DEBUG)原创 2020-12-01 09:06:45 · 202 阅读 · 0 评论 -
vs2015 配置lib、dll、.h搜索目录
简要说明:lib是程序编译的时候需要的,dll是程序运行时候需要的。具体的区别与联系,自行百度注意,配置的目录并不会自行搜索下面的子目录,如果下面有子目录需要添加,则需要把子目录的路径再写一次一、配置.h搜索目录二、配置dll搜索目录三、配置lib搜索目录...原创 2020-10-31 11:07:56 · 477 阅读 · 0 评论 -
vs添加了库目录,里面也有dll,但是提示找不到
问题:vs里面,添加了库目录,也有对应的dll,但是程序还是找不到解释:项目设置里的库目录只是设置.lib文件的搜索路径。dll要放在和exe运行的当前目录或者系统目录里,原创 2020-10-27 08:42:28 · 2413 阅读 · 1 评论 -
vs visual studio 生成dll的时候无法生成lib
软件版本:vs2015问题现象:选择了生成dll,一般会生成dll和lib,但是这次只生成了dll,没有lib原因网上有各种原因,但是我的比较狗血,因为我声明和定义的函数名不一样(差了一个字母的大小写)… 其实编辑器有提示,在.h里面提示了找不到对应的函数定义,但是我没有在意…...原创 2020-10-27 08:38:10 · 823 阅读 · 0 评论 -
C++ 产生随机数
#include <ctime>srand((int)time(0)); //设置随机种子rand()%100 //产生100以内的随机数原创 2020-09-01 19:10:50 · 131 阅读 · 0 评论 -
为什么排序数组比未排序数组的处理速度要快?
为什么排序数组比未排序数组的处理速度要快?翻译 2020-08-04 11:02:25 · 92 阅读 · 0 评论 -
Visual Studio编译错误,LINK : fatal error LNK1181: 无法打开输入文件“xxxxx.obj”
背景之前为了方便,在现有A工程里面编译了其他的项目B,把项目B相关内容删掉以后,提示无法打开输入文件“xxxxx.obj”, xxxx是和项目B有关的内容,很奇怪。解决方案打开 .vcxproj 工程配置文件找到 和xxxx相关的内容,把这个删掉...原创 2020-08-04 09:51:22 · 4187 阅读 · 0 评论 -
理解cudaMalloc函数的用法
实际上涉及到的是双重指针的问题,这个其实可以直接用普通的c++函数申请空间来解释,唯一的区别就是使用cudaMalloc时,会在显存上申请。具体的见连接,解释了利用双重指针来申请主存空间。...原创 2020-07-27 18:56:51 · 1979 阅读 · 0 评论 -
c++ 多线程锁 mutex locker
c++ 多线程锁 mutex, 见知乎专栏转载 2020-07-25 10:18:03 · 862 阅读 · 0 评论 -
线程和进程
进程=火车,线程=车厢线程在进程下行进(单纯的车厢无法运行)一个进程可以包含多个线程(一辆火车可以有多个车厢)不同进程间数据很难共享(一辆火车上的乘客很难换到另外一辆火车,比如站点换乘)同一进程下不同线程间数据很易共享(A车厢换到B车厢很容易)进程要比线程消耗更多的计算机资源(采用多列火车相比多个车厢更耗资源)进程间不会相互影响,一个线程挂掉将导致整个进程挂掉(一列火车不会影响到另外一列火车,但是如果一列火车上中间的一节车厢着火了,将影响到所有车厢)进程可以拓展到多机,进程最多适合多核(不转载 2020-07-25 10:07:29 · 90 阅读 · 0 评论 -
c++ 字符串分割函数
转载自:https://www.cnblogs.com/happykoukou/p/5427268.html//字符串分割函数// str: 需要分割字符串// pattern: 指定的分割字符static std::vector<std::string> split(std::string str, std::string pattern){ std::string::size_type pos; std::vector<std::string> result;转载 2020-07-07 15:07:07 · 265 阅读 · 0 评论 -
c++智能指针 std::unique_ptr的get()
// unique_ptr::get vs unique_ptr::release#include <iostream>#include <memory>int main () { // foo bar p // --- --- --- std::unique_ptr<int&g原创 2020-06-11 18:38:06 · 8509 阅读 · 0 评论 -
windows10 + caffe 配置CUDA10.0
背景一直以来生产中的环境都是caffe + GTX1060显卡 + CUDA8 + cuDNN5,因为面临着10系越来越不好买(停产一年有余),所以需要更换20系的显卡,并选择了RTX 2060。 但是由于2060是图灵架构,只能使用CUDA10,...原创 2019-10-25 19:33:51 · 1946 阅读 · 0 评论 -
C++ 制作dll文件并调用
制作dll此项目的名字是nccnew,其中的想要调用的函数是add_test,就是一个简单的加法函数。#include <iostream>extern "C" __declspec(dllexport) int add_test(int a, int b);int main(){ int d; d = add_test(5, 6); std::cout <&...原创 2019-07-07 09:11:23 · 1158 阅读 · 0 评论 -
c++中的类与类指针
转自:https://www.cnblogs.com/yedushusheng/p/5524043.html代码:Student a; s.setName("A");//Studeng *b = new Student();Student *b;b = new Student();b->setName("B");分析:定义类对象基本格式是:Student ...转载 2018-08-30 14:55:50 · 11905 阅读 · 0 评论 -
VS 错误: cout 不明确
原博客 http://blog.sina.com.cn/s/blog_71a6ea1b0100v074.htmlvs代码时突然出现错误: cout 不明确环境: 各种头文件没问题。直接声明名称空间 using namespace std;解决方法: 然后把using namespace std;这句给注释掉,等出现一片片错误提示,再取消注释。然后就好了...转载 2018-06-04 09:32:45 · 26413 阅读 · 30 评论 -
c++ 类 const 成员函数
const 对象只能调用 const成员函数, 这样才能确保不修改对象本身假设类 CStock存在void CStock::show()的一个成员函数错误代码实例const CStock obj;//创建一个CStock的对象 obj, 并且确定他无法修改.obj.show();//系统会报错,因为系统不知道show()会不会更改对象obj我们试图把show() 声明为const...原创 2018-04-14 17:04:30 · 517 阅读 · 0 评论 -
c++ 类
C ++ 类@(C/C++)[c++, 类]C ++ 类1 类的定义/构造1.1 关于类的理解1.2 类的定义2 类成员的可访问范围3 内联成员函数/重载3 构造函数4 复制构造函数4.1 复制构造函数的定义4.2 复制构造函数的作用5 类型转换构造函数6 析构函数6.1 析构函数的构造6.2 析构函数的意义6.3 析构函数的特点6.4 析构函数...原创 2018-04-14 16:31:05 · 262 阅读 · 0 评论