![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
hancoder
谢谢支持
展开
-
linux编程GCC、gdb、Makefile、make、
文章目录GCCgcc编译过程gcc编译多文件gdb动态库和静态库创建静态库使用静态库动态库动态库的创建动态库的使用静态库和动态库的区别makemake是什么1 make命令和Makefile文件2 MakefiIe文件编写makefile抒写规则makeMakefile文件中的变量Makefile通配符automakeGCCgcc是GNU Compiler Collectiongcc [选项] 参数-o 指定目标文件的名称-g 使生成的可执行文件中包含debug信息-c 只编译不连接-E 只做原创 2020-09-27 13:01:21 · 479 阅读 · 0 评论 -
C++11智能指针shared_ptr
文章目录1.new+delete1.1内存的分配1.2delete释放堆内存2智能指针之共享指针:shared_ptr2.1创建一个智能指针:shared_ptr、make_shared2.2检查创建的智能指针是否成功创建2.3构造函数防错注意事项2.4智能指针的释放2.5运算符重载2.6智能指针成员函数方法之:get()2.7智能指针成员函数方法之:use_count()2.8智能指针成员函数方...原创 2019-09-02 00:05:38 · 2358 阅读 · 0 评论 -
内存四区、全局变量、静态局部变量、extern"C"
文章目录内存四区与内存分配的几个函数1) memset()2) memcpy()3) memmove()4) memcmp()堆区指针:malloc、newnew和malloc区别:堆区越界:栈区指针:int a;int *p=&a;作用域1、普通局部变量2、static局部变量普通局部变量和static局部变量区别:3、普通全局变量(外部链接)静态局部变量和普通全局变量的区别4、stat...原创 2019-07-18 22:44:12 · 1045 阅读 · 1 评论 -
dll动态链接库的简单使用
转载动态库的生成打开vs 新建项目,起的名字不能有中文2)写代码写代码就是我们之前写的xxx.c和xxx.h,只是不需要main()函数测试罢了。你可以重新新建项目,重新写。或者用之前写好的代码,生成库:步骤如下:拷贝所需代码到工程所在目录B) 添加所需代码:C)D)修改代码生成 DLL...转载 2019-07-16 16:13:12 · 632 阅读 · 0 评论 -
C++动态内存new+delete+shared_ptr+unique_ptr
C++中,动态内存的管理是通过一对运算符来完成的:new+delete。new在动态内存中为对象分配空间并返回一个指向该对象的指针,可以选择对其进行初始化。delete 接受一个动态对象的指针,销毁该对象,并释放与之关联的内存。new+delete用法int *pi=new int;//new创建了一个动态的,未初始化的无名对象,返回指向该对象的指针int *pi=new i...原创 2019-05-05 23:37:59 · 883 阅读 · 0 评论 -
c++中nullptr
C++中为了避免“野指针”(即指针在首次使用之前没有进行初始化)的出现,我们声明一个指针后最好马上对其进行初始化操作。如果暂时不明确该指针指向哪个变量,则需要赋予NULL值。除了NULL之外,C++11新标准中又引入了nullptr来声明一个“空指针”,这样,我们就有下面三种方法来获取一个“空指针”:如下:int *p1 = NULL; // 需要引入cstdlib头文件int *p2 = ...转载 2019-05-04 16:12:40 · 19313 阅读 · 4 评论 -
string、vector等容器、迭代器要点
只记录要点。文章目录string初始化stringstring类的成员函数string读取getline读取一整行C标准库String函数line.size();line.empty();string::size_type类型、decltypestring的索引1下标运算符`[]`,2迭代器标准库vector初始化vector对象vector操作迭代器迭代器的类型迭代器的操作string头文...转载 2019-05-04 14:31:48 · 451 阅读 · 0 评论 -
C++函数重载与模板要点
基础知识不谈了,主要写些重点。重载函数的参数个数,参数类型,参数顺序三者中必须至少有一种不同。class不可省略template<class T1,T2>是错误的,T2前也需要加class继承的类前也需要写template其实是可以不用template的,但是不用的话就需要在继承的基类的尖括号里注明类型,总之无论是具体类型还是模板,都是需要注明类型的。#define _CR...转载 2019-05-03 22:35:08 · 294 阅读 · 0 评论 -
C++ const用法
c++ const学过多次了,但碰到工程代码还是不熟练。参考了其他博客,在此记录下来,以便有需要时翻看。限定符const的作用是让变量或函数的某些地方不能改变。const基础知识const在定义时候必须赋值const int i=0; //i不能改变数值,且定义的时候必须初始化i=1; //会报错,常量不能改变值const int j; //报错,没初始化//初始化方法没太大限制...转载 2019-05-03 16:55:28 · 1200 阅读 · 0 评论 -
win+vs下opencv安装与说明
win+opencv+vs安装。一劳永逸配置,每次创建新项目无需修改。因为刚接触opencv,再加上对VS不熟悉,所以刚接触时候有些抽象,故记录下来。装机环境:win10-64位,opencv346,VS2017opencv电子书:https://pan.baidu.com/s/1onI6f7P2J8XPV_vsSByKYw 提取码:kmpuopencv的下载从官网下载http://op...原创 2019-04-26 22:46:18 · 3590 阅读 · 2 评论 -
gcc的安装与多版本gcc切换
#注:本文仅适用于安装gcc-6.3 g+±6.3之类的,因为apt-get不支持安装gcc-5以上多版本。如需安装版本5之下的,请直接使用apt-get 安装。参考别人链接:https://blog.csdn.net/zhangxin4832/article/details/79225394/ 。对这个链接里内容不解也可留言~因为需要配置环境测试实验,需要更换gcc测试哪个版本合适。所以有了...原创 2019-02-24 20:07:01 · 3363 阅读 · 7 评论