![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++成长之路
zymofffice
这个作者很懒,什么都没留下…
展开
-
QT-VS2010-QCustomplot
1、目前其实Qchart更方便一些,但是对QT的版本有限制,在5.4版本以上才可以。因此如果版本不够还是得用QCustomplot 或者QWT,但是QWT的安装配置麻烦,因此选择使用简单且小巧的QCustomplot。2、安装教程: http://blog.csdn.net/czyt1988/article/details/10143141此微博已经清楚的解释了在QT中使用QCu原创 2018-01-02 08:47:56 · 846 阅读 · 0 评论 -
boost的共享所有权share_ptr指针
1:share_ptr指针相当于所有股东放弃股权,公司才会转让;scoped_ptr相当于一个人拥有公司,他放弃股权,公司也就转让出去了;2:shared_ptr使用引用计数,每一个shared_ptr的拷贝都指向相同的指向相同的内存,每次拷贝,引用计数加一;3:实例:使用方法和std的智能指针是一样的#include <boost/make_shared.hpp>class ...原创 2018-10-26 00:08:10 · 275 阅读 · 0 评论 -
boost的scoped_ptr
1:早前,auto_ptr可以达到智能指针的作用,但是在拷贝构造或者赋值的时候就会失去权限2:scoped_ptr禁止用户拷贝构造和赋值#include <boost/scoped_ptr.hpp>scoped_ptr<A> a(new(A));scoped_ptr<A> a(new(a));//拷贝构造是私有的,禁止拷贝构造scoped_ptr&...原创 2018-10-26 00:22:46 · 623 阅读 · 0 评论 -
C++11-initialization list
1:常规初始化int arr[]={1,2};vector&lt;int&gt; v;vector&lt;int&gt; v(2);vector&lt;int&gt; v(2,101);vector&lt;int&gt; (varr,arr+2);拷贝构造等//map初始化方式map&lt;int,string&原创 2018-10-29 22:37:39 · 334 阅读 · 0 评论 -
C++11--enum/class/struct/assert
1:枚举enumenum struct XX:char{ ONE, TWo};enum class NUM:long long{ ONE, TWO}; XX n=XX::ONE; cout<<static_cast<int>(n)<<endl; //很鸡肋的功能2:断言:assert(以便于调试) #include <asser...原创 2018-10-30 00:07:29 · 134 阅读 · 0 评论 -
C++11----bind
1:实例#include <iostream>#include <functional>using namespace std;int add(int x,int y){ return x+y;}int dv(int x,int y){ return x-y;}struct pp{ int data; double source;};class ...原创 2018-10-31 23:19:13 · 170 阅读 · 0 评论 -
C++11--function
1:function作用:提供函数统一的接口,是可调用函数的包装器, 函数/函数指针/lambda/伪函数;2:传统多态实现#include <iostream>#include <functional>using namespace std;class opr{public: virtual int op(int x,int y)=0;};class A...原创 2018-10-30 23:53:17 · 1405 阅读 · 0 评论 -
linux下gdb调试
一:错误容易复现,使用gdb1:控制类命令:b(break):添加断点【b main.cpp:12】/【b test】/【b 12】【info break显示断点信息】【delete break 编号】r(run):重头开始运行程序n(next):下一步【n 3】可以执行三步c(continue):程序继续运行,直到下一个断点处q(quit):退出2:显示类命令p(print):打...原创 2018-11-06 22:17:54 · 388 阅读 · 0 评论 -
static方法
1 : static成员函数和普通成员函数的本质区别无this指针(实质上为对象的首地址,且成员都默认带有this指针)2: 用途:1)对方法进行分类,调用时以类似于命名空间的形式调用class opt{public: static void Add(); static void Delete();};void main(){ opt::Add(); opt::Delete(...原创 2019-05-06 23:18:16 · 622 阅读 · 0 评论 -
堆/栈/静态存储区
栈:【函数调用】函数中形参和局部变量存储在栈上。栈在程序中用于维护函数调用的上下文,保存了一个函数调用所需要维护的信息。函数调用栈上的数据,当函数调用时,对应的栈空间在函数返回前是专用的(即此时不能被其余函数访问),在函数调用结束之后,栈空间将被释放,数据不再有效。注意:函数调用结束之后,栈空间释放。故局部变量中的指针和地址是禁止作为返回值的。(指针和地址通过变异之后,一般都关联了一个特定...原创 2019-05-06 23:31:36 · 235 阅读 · 0 评论 -
Swicth拆分方法
1:表驱动2:设计模式(工厂模式/状态模式等)3:枚举记录一个好的string无法进行switch的好方法,就是转换为整数,在编译期间分配值,switch...case在代码整洁度和效率上上明显优于if/else...原创 2019-05-06 23:34:38 · 329 阅读 · 0 评论 -
C++11-range-base for
int arr[10]={1,2,3,4,5,6,7,8,9,10};for(int i;i<sizeof(arr)/sizeof(*arr);i++){ cout<<arr[i];}//简便方法for(auto &i : arr){ i+=5; cout<<i<,endl;}//这种没啥问题char *p="china";for...原创 2018-10-28 22:09:16 · 997 阅读 · 0 评论 -
C++11nullptr/ovrride/delete/default
1:override:将检查交给编译器去办,防止那种出现错误但是不报错;2:final:两个作用:1)阻止了从类继承;2)阻止一个虚函数的覆写;1)class A final{};class B:public A{};//编译则会出错,不让继承class A{public: virtual void func() final {}};class B:public...原创 2018-10-28 21:12:04 · 301 阅读 · 0 评论 -
C++11简介
1:C++11 MordernC++cocos2d:游戏开发平台crossApp:基于事件的跨平台原创 2018-10-28 19:59:08 · 161 阅读 · 0 评论 -
C++中的值传递,地址传递,引用传递
http://blog.csdn.net/lushujun2011/article/details/6889347 http://blog.csdn.net/the_dying_man/article/details/73261546值传递其实是将a,b的值赋值给x,y,后续函数的计算都是计算的x,y的值,而a,b的值本身不变化 fun(int x,int y) fun(a,...原创 2018-03-09 14:54:57 · 1798 阅读 · 0 评论 -
虚函数,纯虚函数区别
1、虚函数的作用是“运行时多态”和重载,父类中提供虚函数的实现,为子类提供默认的函数实现;子类可以重写父类的虚函数实现子类的特殊化;2、纯虚函数:包含纯虚函数的类称为抽象类。抽象类不可以new出对象,只有实现了这个纯虚函数的子类才能new出对象。纯虚函数更像是只提供申明,不实现,是对子类的约束,是接口继承。纯虚函数也是一种运行时多态。 3、普通函数:静态编译的,没有运行时多态。注意:纯虚...原创 2018-03-09 15:35:32 · 5478 阅读 · 0 评论 -
vs2017程序打包
https://www.cnblogs.com/1175429393wljblog/p/8398345.html转载 2018-08-06 21:13:24 · 1405 阅读 · 0 评论 -
C++深拷贝与浅拷贝
https://blog.csdn.net/qq_27011361/article/details/79518057 1、深拷贝和浅拷贝针对的是构造函数2、原创 2018-09-09 13:28:47 · 108 阅读 · 0 评论 -
华为C++工程师编程经验 -
1:默认参数只能从右往左,不可以跳跃;如:foo(int a,int b,int c=10) [对]foo(int a=5,int b,int c=10) [错]2:实参个数+默认个数 &amp;gt;= 形参个数;3:默认参数只出现在申明区,若实现和申明在一起,则没关系;4:和重载的冲突:当实现同一功能,既可以使用默认参数,又可以使用重载的时候,推荐使用默认参数fun(int a);...原创 2018-10-14 23:33:31 · 1098 阅读 · 0 评论 -
C++程序技巧
1:inline关键字:内部多次调用,可以节省时间2:简明注释 /* *@brief XXX @param XXX */3:Hook(钩子)4:using namespace的使用5:const:限制内部修改传入参数6:enum:枚举类型...原创 2018-10-17 11:32:45 · 105 阅读 · 0 评论 -
COIN3D拖拽器使用
#include //头文件SoTransformerDragger *dragger1;//申明///////////////////////////////////////////dragger1=new SoTransformerDragger;//新建dragger1->scaleFactor.setValue(0.2,0.2,0.2);//设置缩放因子,由于场景是m为单位,因此原创 2018-10-17 11:36:17 · 783 阅读 · 1 评论 -
python学习过程
python学习过程:1、【廖雪峰的python官方网站】https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/其中:learning.py使用方法:将learning.py内容复制在一个txt文档中,重新命名为:learning.py,然后在learning.py目录下运行原创 2018-10-17 11:37:36 · 127 阅读 · 0 评论 -
caffe中CMakeLists.txt文件详解
#最小支持版本设定cmake_minimum_required(VERSION 2.8.7)if(POLICY CMP0046) cmake_policy(SET CMP0046 NEW)endif()if(POLICY CMP0054) cmake_policy(SET CMP0054 NEW)endif()# ---[ Caffe project#caffe工程名p原创 2018-10-17 11:38:19 · 704 阅读 · 0 评论 -
python廖雪峰老师教程学习笔记一
1、计算机只能处理数字,如果需要处理文本,那么需要将文本转换为数字,最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,4个字节可以表示的最大整数是4294967295。2、Ascall码:A:65 Z:9原创 2018-10-17 11:38:51 · 401 阅读 · 0 评论 -
Jsoncpp使用记录
1:问题double类型的会损失精度序列化和反序列化很麻烦,网上有一个x2struct,依赖于腾讯的RapidJson2:流程Json::Value value;//亦可是arrayJson::FaseWrite/StyleWrite write;write(value);//有两种模式parse(value,str);isMember()isString()/isInt()/i...原创 2019-05-06 23:39:28 · 193 阅读 · 0 评论