自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

转载 Qt 事件机制

原文链接: https://www.cnblogs.com/Braveliu/p/7417476.html

2019-10-31 22:19:19 117 1

原创 UML统一建模语言(二)

UML基本表示法 类注释: 下面的图表示的 UML 类,该图被分为四个部分。 顶端部分被用来命名类。 第二个是用来显示类的属性。 第三部分是用来描述由类执行的操作。 第四部分是可选的显示附加组件。 类是用来表示对象,对象可以是任何性质和职责。 对象表示法: 该对象表示以同样的方式作为类。唯一的区别是有下划线的名称,如下图所示。 由于对象是实际执行的一类被称为类的实例。因此...

2019-06-29 19:22:04 314

原创 UML统一建模语言(一)

简介: 我们在进行项目的时候,通过使用 UML 的面向对象图的方式来更明确、清晰的表达项目中的架设思想、项目结构、执行顺序等一些逻辑思维。 UML 统一了Booch、OMT、OOSE和其他面向对象方法所涉及的基本概念和建模符号。 UML的模型主要有三部分构成: 事物(Things):UML模型中最基本的构成元素,是具有代表性的成分的抽象 关系(Relationships):关系把事物紧密...

2019-05-29 11:04:38 171

原创 C++性能优化指南

C++性能优化指南    这是一篇关于C++性能优化指南的学习笔记,主要是通过阅读学习Kurt Guntheroth著的Optimized C++:Proven Techniques for Heightened Performance。 这是一本知识量和信息量很大的一本书书,书里详细介绍了影响C++程序性能的原因,也给出了很多提高性能的优化策略。    书中不仅讲解了软件和系统方面的相关内容,...

2018-10-29 21:24:56 1342

原创 三维变换

   

2018-08-01 21:35:05 165

转载 C++宏定义

原文链接 一、#define的基本用法     #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能 理解该命令的本质,总是在此处产生一些困惑,在编程时误用该命令,使得程序的运行与预期的目的不一致,或者在读别人写的程序时,把运行结果理解错误,这对 C语言的学习很不利。 1 #define命令剖析 ...

2018-07-19 19:42:43 120

转载 智能指针

1.智能指针的作用       C++程序设计中使用堆内存是非常频繁的操作,堆内存的申请和释放都由程序员自己管理。程序员自己管理堆内存可以提高了程序的效率,但是整体来说堆内存的管理是麻烦的,C++11中引入了智能指针的概念,方便管理堆内存。使用普通指针,容易造成堆内存泄露(忘记释放),二次释放,程序发生异常时内存泄露等问题等,使用智能指针能更好的管理堆内存。理解智能指针需要从下面三个层次:从较浅的...

2018-07-03 21:38:24 102

原创 计算机图形学——二维几何变换

2018-07-01 19:02:34 4075

原创 类模板

       类模板是用来生成类的蓝图的,与函数模板不同,编译器不能自动推断类模板的模板参数类型,所以在使用类模板时,需要使用尖括号来提供额外的信息。vector<int> v1; map<string, int> m1;...

2018-05-20 22:13:56 162

原创 函数模板

模板是泛型编程的基础,一个模板就是创建类或者函数的蓝图或者说公式。一、定义模板1. 函数模板。我们可以定义一个通用的函数模板,而不是为每一个类型都定义一个重载函数。template <typename T> int compare(const T& v1, const T& v2) { if(v1 < v2) return -1; if(v1 &g...

2018-05-19 23:28:31 119

原创 运算符重载

1. 运算符重载函数形式:    返回值 关键字operator 运算符(参数列表){函数体}2. 重载运算符函数的参数数量与运算符的运算对象数量一致,一元运算符有一个参数,二元运算符有两个参数。二元运算符左侧的对象传递给第一个参数,右侧的对象传递给第二个参数。3. 运算符函数是成员函数时,this绑定到左侧运算对象,运算符函数的参数数量也要比运算对象少一个。4. 运算符函数或者是类成员函数,或者...

2018-05-12 22:48:48 124

转载 函数指针

C/C++ 函数指针使用总结 一 函数指针介绍     函数指针指向某种特定类型,函数的类型由其参数及返回类型共同决定,与函数名无关。举例如下: int add(int nLeft,int nRight);//函数定义    该函数类型为int(int,int),要想声明一个指向该类函数的指针,只需用指针替换函数名即可: int (*pf)(int,int);//未初始化     则pf...

2018-04-24 22:49:24 206

原创 lambda表达式-2

        当定义一个lambda时,编译器生成了一个与lambda对应的类类型,这个类类型是未命名的。因此,当向一个函数传递一个lambda时,同时定义了一个类类型以及该类型的一个对象:传递的参数就是该对象。类似的,使用auto定义一个用lambda初始化的变量时,实际上定义了一个lambda生成的类类型对象。auto f = [] {return 42}; cout << f(...

2018-04-18 22:11:02 273

原创 lambda表达式

    sort算法(algorithm)在排序时,会默认使用元素类型的<或者==运算符来完成元素的比较,但是有时容器的元素类型没有定义<、==等操作运算符,因此算法库为此类算法重载了另外一个版本,允许我们自己提供自定义的操作来代替默认的运算符。    如下所示的程序段:bool isShorter(const string & s1, const string & s...

2018-04-17 22:29:46 140

原创 泛型算法

1. 大多数算法都定义在algorithm中。一般情况下,这些算法并不直接操作容器,而是遍历由两个迭代器指定的一个元素范围来进行操作。迭代器另算法不依赖容器,但算法依赖于元素类型的操作...

2018-04-16 23:14:42 102

原创 范围for语句

C++11新标准提供的范围for语句,遍历给定序列中的每个元素,语法格式:                 for(declaration : expression)                                              statement;declaration 负责定义一个变量,该变量被用于访问序列中的基础元素expression 被遍历的序列对象例如,遍历...

2018-04-09 21:37:55 283

原创 顺序容器概述

1. 顺序容器类型vector                 可变大小数组deque                 双端队列list                      双向链表forward_list       单向链表array                  固定大小数组string                 字符串,与vector类似,但专门用于保存字符2. 选择容器的...

2018-04-09 20:59:04 80

原创 const 限定符总结

1、const 常量const int bufSize = 256; //不可修改const 对象一旦创建后其值就不能修改const int j = get_Size(); //正确,可以通过表达式初始化const int k; //错误,没有初始化的常量2、const 对象作用域默认状态下,const 对象仅在文件内有效,如const int bufSize = 256; 仅在当前文件内有效多个...

2018-03-27 22:02:35 106

原创 可扩展的对话框

1. 这里的可扩展的对话框指的是可以通过按钮、命令去控制对话框其中一部分显示、隐藏。如下:扩展部分显示:2. 如何实现(1)设计窗口及布局(2)实现扩展的窗口必须设定为不可拖拽大小的: //设置窗口不可改变大小 layout()->setSizeConstraint(QLayout::SetFixedSize);(3)实现槽函数,通过按钮控制扩展部分的显隐:void MainW...

2017-11-04 21:52:57 228

原创 Qt设置快速定位的热键

例如图示的窗口,“Find what”标签、“Match case”复选框的“w”、“c”下有一个横线。这个横线是在按住Alt键时显示出来的,如按住Alt+C会快速定位的复选框,如何实现的呢?只需要在设置文字时,前面加“&”就可以了。例如设置复选框快捷键:QCheckBox *checkBox = new QCheckBox(tr("Match &case"));设置“Find w...

2017-11-02 21:26:37 988

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除