自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (1)
  • 收藏
  • 关注

原创 1024程序员节

1024=2^10

2023-10-24 18:11:04 117

原创 QtDelegate委托的使用

简单基础部件的委托可以继承QItemDelegate,并使用这些函数的默认实现,委托编辑器可以通过使用小工具来管理编辑过程或直接处理事件来实现。使用Delegate的原因:Qt中当用到QTreeView和QTableView等用于显示item的视图时,你要编辑一个item用到的编辑工具可能是除了默认文字编辑lineEdit以外的工具,例如button,spinBox,甚至Slider,ProgressBar,也有可能是自定义的widget。所以Qt提供了一个委托类,用来处理View中的数据展示方式

2020-09-18 15:51:42 8081 3

原创 Qt创建一个简单的QML程序

什么是QML?QML是一种用户界面规范和编程语言。它使开发人员和设计师都可以创建高性能,流畅的动画和吸引人的应用程序。QML提供了一种高度可读的,声明性的,类似于JSON的语法,并支持将命令性JavaScript表达式与动态属性绑定结合在一起。QML是一种声明性语言,它允许根据用户界面的视觉组件以及它们之间的交互方式和相互关系来描述用户界面。它是一种高度可读的语言,旨在使组件能够以动态方式互连,并且允许在用户界面内轻松地重用和自定义组件。使用该QtQuick模块,设计人员和开发人员可以轻松地在QML中

2020-09-08 16:44:22 2233

原创 关于时间的注解

在eclipse中当我们的项目需要从数据库获取时间在前端显示的时候发现所得到的时间却不是我们想要的格式,会变成一段看不懂的格式数据,那么现在就有个注解就可以很好的解决这个问题@JsonFormat,在用这个注解的时候要引入正确的jar包,我这个是maven-springmvc的项目,需要在pom.xml的依赖中添加一下几个文件依赖,还有一个要注意的是,有些可能添加了依赖也还是不行,那么可能是版本过低了,我这个2.9.7就满足了我的需求,这个就看你们的需求<dependency> <gr

2020-09-04 16:27:59 808

原创 Spring三大核心之一AOP

Spring三大核心之一的AOP:AOP为Aspect Oriented Programming的缩写,意思是:面向切面编程,通过预编译方式和运行期间动态代理实现程序功能的统一维护的一种技术。AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从而使得业务逻辑各部分之间的耦合度降低,提高程序的可重用性,同时提高了开发的效率。如果要在Spring框架中用到面向切面编程的话可以通过注解配置AOP(使用 A

2020-08-28 16:44:03 326

原创 Eclipse解决创建Maven Project失败的问题

最近在接触Java的知识点,用到了eclipse这个开发工具,期间创建了好几个project都没有什么太大的问题,如SSM(spring + springmvc + mybatis),当我用Maven来搭建SSM的时候就这几天在用eclipse创建maven project的时候报错了,就在最后一步的点击finish的时候就不行了,就创建失败了。这个错误翻译过来是这样的:无法解决来自任何配置存储库的原型看到这个翻译我也是不知道是哪里出现了问题,上网也找了挺多的,基本上都是要通过xxxxxxx.xml来

2020-08-09 20:14:02 1760 1

原创 QT的main.cpp的说明和foreach

我们在构件QT项目的时候,都会看到有这个main.cpp文件,可是我们又很少会在那里编写代码 ,可能大家不是很了解这个main.cpp的内容,这个文件是实现 main() 函数的文件,也很重要,下面这个是 main.cpp 文件里面的的内容。#include "widget.h"#include <QApplication>int main(int argc, char *argv[]){QApplication a(argc, argv); //a 为应用程序对象 ,在Qt中应用程序

2020-06-08 18:02:56 2050

原创 进制转换

进制大家应该都挺熟悉的了,我们就可以也用Qt来做个实例,来个进制的转换。下面是二进制转为十进制和十六进制的槽函数:void Widget::onBtn1Click(){ //读取二进制的数,转换为其他进制 QString str=edit1->text(); bool ok; int val = str.toInt(&ok,2); //以二进制数读入 str = str.setNum(val,10); //转为十进制字符串 edit2->setText

2020-05-29 18:19:01 183

原创 QT正则表达式

在一些文本框输入的时候呢,需要进行验证一些内容,看用户输入的内容是否符和规范,这时候呢就需要用到正则表达式啦,正则表达式用在一下的几个方面:正则表达式是验证输入、从输入中提取数据以及对输入进行搜索和替换的强大工具,所谓正则表达式,regexp是一种利用模式匹配语言来描述字符串组成限制条件的方式;Qt 提供了一个QRegExp类,它实现了Perl风格的扩展正则表达式语言的大部分功能1、 验证:测试一个字符是否符合规范,例如输入密码框输入的是否数字2、 搜索:就是某些字符串是否都可以匹配在一起3、 查找

2020-05-18 19:55:53 912

原创 布局管理器

目前我们新接触到了新的学习知识点—Android的界面编程。在接触这个Android编程的时候,对一些布局是要有一定的了解的,而且也挺重要的,在这段的学习中呢,我们就接触到最多的就是LinearLayout这个布局啦,叫做线性布局,是所有布局中最常用的类之一 ,我通过查阅资料得知Android中有六大布局,分别是: LinearLayout(线性布局),RelativeLayout(相对布局),TableLayout(表格布局) FrameLayout(帧布局),AbsoluteLayout(绝对布局),G

2020-05-17 20:39:29 271

原创 两个独立的窗口

目前我接触到的基本都是在一个页面上进行操作的,这样好象有点单调,所以就弄出了个可以将两个页面互相切换的窗口啦。我们先像平常一眼,先弄个页面出来,并且定义一个按钮,再新建一个cpp文件,做为子窗口 ,如下所示。在子页面也要定义一个按钮,用于切回到主页面,再写个方法,还要在头文件些一个信号void sendSolt();signals:/* 信号必须有signals关键字来声明* 信后没有返回值,但可以有参数* 信号就是函数的声明,只需声明,,无需定义* 使用:关键字 emit mySigna

2020-05-08 19:41:16 494

原创 QT5中的Lambda表达式

我们都知道在QT中呢,要让一些控件做出处理,那么就要用到信号和槽了,来进行处理一些事件,就好比如:QPushButton *b = new QPushButton(this);b->setText("btn");connect(b,&QPushButton::clicked,this,&MainWidget::mySlot);void MainWidget::myS...

2020-04-28 18:04:31 1854

原创 适配器模式

将一个 类的接口转换成客户希望的另一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作#include<iostream>#include<vector>#include<algorithm>using namespace std;//已经写好的struct Func{ void operator()(int a,int b) {...

2019-08-18 11:30:19 107 1

原创 代理模式

代理模式定义:为其他对象提供一种代理以控制对这个对象的访问。在某些去情况下,一个对象不适合或不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介作用。#include<iostream>#include<string>using namespace std;class Commit{public: virtual void run() = 0;...

2019-08-18 11:21:33 98 1

原创 开闭原则

开闭原则:对扩展开放,对修改关闭,增加功能是通过增加代码来实现,而不是修改源代码#include<iostream>using namespace std;//计算机抽象类class Calculator{public: virtual int Get_Calculator()= 0; virtual void Set_Calculator(int a, int b) ...

2019-08-07 21:25:13 149 1

原创 策略模式

策略模式定义了一系列的算法,并将每一个算法封装起来,并且是它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。#include<iostream>using namespace std;//抽象武器 武器策略class Weapon{public: virtual void UserWeapon() = 0;};class Knife :public...

2019-08-07 20:44:48 145

原创 外观模式

外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。就是将复杂的子类系统抽象到同一个的接口进行管理,外界只需要通过此接口与子类系统进行交互,而不必直接与复杂的子类系统进行交互。主要解决:降低访问复杂系统的内部子系统时的复杂度,简化客户端与之的接口。#incl...

2019-07-28 20:55:13 183 1

原创 模板方法模式

定义:一个操作的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。实现方案:将算法/逻辑框架放在抽象基类中,并定义好实现接口,在子类中实现细节接口。也就是呢,玩游戏,不可能一开始就结束的啦,肯定就要先匹配玩家战斗,直到战斗结束,都是有这个固定的一个过程的,是要按顺序来执行下去的。#include<iostream>using...

2019-07-28 20:14:09 231

原创 栈解旋

栈解旋:异常被抛出后,从进入 try 块起,到异常被抛掷前,这期间在栈上的构造的所有对象, 都会被自动析构。析构的顺序与构造的顺序相反。这一过程称为栈的解旋(unwinding)。#include<iostream>using namespace std;class Person{public: Person() { cout << "我是构造函数" &l...

2019-07-18 10:15:45 1031

原创 继承在异常中的应用

#include<iostream>using namespace std;class Myexception//异常基类{public: virtual void what()=0; virtual ~Myexception() {}};class Myval:public Myexception{public: virtual void what() { ...

2019-07-18 09:57:04 90

原创 单例模式

单例模式,是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中,应用该模式的一个类只有一个实例。即一个类只有一个对象实例。就好比如电脑的任务管理器就单例模式。单例模式的步骤:1、构造函数私有化2、增加静态私有的单前类的指针变量3、提供静态对外接口,可以让用户获得单例对象因为构造函数私有化,就意味着,只能在Lazy/Hungry的成员函数中...

2019-07-08 11:05:18 70

原创 _Find_pr()来匹配字符串是否相等

用_Find_pr()这个算法做一个小功能,这个算法呢是不需要包含algorithm这个头文件的。这个算法有四个参数的_Find_pr(迭代器的起始值,迭代器的末尾值,值,仿函数),这个算法可以拿来干嘛呢,在这里呢我就拿来对比两个字符串是否相等:#include<iostream>#include<vector>using namespace std;bool fu...

2019-07-08 09:52:50 142

原创 类型转换(二)

const_cast:去掉const属性转换 const_cast<目标类型>(标识符)//目标类型只能是指针或是引用#include<iostream>using namespace std;struct test{ int data;};void main(){ const test a = { 100 }; //test a1 = const_...

2019-06-28 11:19:38 94

原创 类型转换(一)

C++提供了四种类型转换,分别处理不同的应用场合static_cast:静态类型转换 reinterpreter_cast:重新解释类型转换dynamic_cast:子类和父类之间的多态类型转换 const_cast:去掉const属性转换第一个static_cast:静态类型转换 static_cast<目标类型>(标识符)所谓的静态就是在编译的时候就已经决定...

2019-06-28 11:17:04 187

原创 Algorithm算法

STL 提供了大约 100 个实现算法的模版函数,比如算法 for_each 将为指 定序列中的每一个元素调用指定的函数,stable_sort 以你所指定的规则对序列 进行稳定性排序等等。这样一来,只要熟悉了 STL 之后,许多代码可以被大大的 化简,只需要通过调用一两个算法模板,就可以完成所需要的功能并大大地提升 效率。下面我就写了两个算法:#include <iostream&gt...

2019-06-18 09:39:14 1004

原创 函数类型和函数指针

函数类型的语法基础:函数指针用于指向一个函数, 函数名是函数体的入口地址1)可通过函数类型定义函数指针: FuncType* a;2)也可以直接定义:type (*a)(parameter list);a为函数指针变量名type为指向函数的返回值类型 parameter list为指向函数的参数类型列表#include<iostream>using namespa...

2019-06-18 09:35:56 516

原创 链表(二)

接着链表来说下对链表的插入和删除的操作在链表头部插入新节点:这个比较简单的,就是让你的新节点指向你的头节点就可以完成这个操作啦。void InsertHead(node*&head){ node*s = NULL; s = new node; int a; cin >> a; s->data = a; s->next = head; head =...

2019-06-09 20:50:31 96

原创 输入输出流

下面编写程序统计一个文件中的字符总数、非空白字符总数、字母总数和平均单词长度,并输出到屏幕和输出文件output.txt。这个要用到输入输出流#include<iostream>#include<fstream>#include<iomanip>using namespace std;bool isalph(char c){ return ((c ...

2019-06-09 17:44:12 118

原创 链表

程序对数据的表示,不但要求存放基本信息,还要表示与其它数据元素的关系线性表是最简单的数据组织形式。下面我们来建立和遍历一个链表。#include<iostream>using namespace std;//声明一个链表节点的结构体struct node{ int data; node * next;};//创建链表node * CreateList(){...

2019-06-09 17:14:53 77

原创 螺旋矩阵

用个二维数组做了个螺旋矩阵, #include<iostream> #include <iomanip> using namespace std; void main{ int a[5][5];//一个五行五列的二维数组 int length = 4; int num = 1;//螺旋矩阵的起始值 int b = 0; int i = 0; ...

2019-05-28 10:52:27 177 1

原创 默认参数和占位参数

一般来说呢,函数在调用的时候,形参从实参那里取得值。当我们多次调用用一函数同一实参的时侯,C++就给出了更简单的处理办法。给形参以默认值,这样就不用从实参那里取值了。默认参数规则:只有参数列表后面部分的参数才可以提供默认参数值,一旦在一个函数调用中开始使用默认参数值,那么这个参数后的所有参数都必须使用默认参数值。单个默认参数#include<iostream>using ...

2019-05-28 09:54:34 2376

原创 两个存储类

static 存储类:static 存储类指示编译器在程序的生命周期内保持局部变量的存在,而不需要在每次它进入和离开作用域时进行创建和销毁。因此,使用 static 修饰局部变量可以在函数调用之间保持局部变量的值。static 修饰符也可以应用于全局变量。当 static 修饰全局变量时,会使变量的作用域限制在声明它的文件内。在 C++ 中,当 static 用在类数据成员上时,会导致仅有一...

2019-05-17 14:38:05 117

原创 重载

重载函数调用符号(operator())把类对象像函数名一样使用。仿函数(functor),就是使一个类的使用看上去象一个函数。其实现就是类中实现一个operator(),这个类就有了类似函数的行为,就是一个仿函数类了。class 类名 { 返值类型 operator()(参数类型) 函数体 }#include <iostream>using namespac...

2019-05-17 10:51:03 2280

原创 Oracle的日期函数

两个日期相差的月数Select MONTHS_BETWEEN ('11-11月-18','11-11月-19')from dual; 向指定日期中加上若干月数select ADD_MONTHS ('1-2月-19',6)from dual; 指定日期的下一个星期 * 对应的日期Select NEXT_DAY ('28-2月-19','星期五') from dual...

2019-05-08 21:25:49 101

原创 C++中的指针

我们都知道在C++中指针,很好用,指针可以简化C++编程任务的执行,有一个动态内存分配没有指针是完成不了的,在C++中学好指针那么你也就差不多学会一半的啦,所以非常有必要把这个指针学好的呢!我们知道变量都有一个它内存的所在的位置,这你就要用到一个符号“&”,这个叫作取址符,它表示的是内存中的一个地址,我们可以试一下:#include <iostream>using name...

2019-05-08 21:01:44 1367

原创 C++中for循环语句

for循环语句我们应该都挺熟悉的,for循环的结构也比较简单: for(初始表达式;逻辑表达式;循环后置表达式){ 循环体 } 可以for循环有很多种写法,有不同形式的语句结构,但是得到结果都是一样的。原始的表达式:#include <iostream>using namespace std;void main(){ int n = 10; in...

2019-05-08 20:32:52 21093 4

原创 C++程序的内存区域

在C++中程序的内存区域,可以分为四大部分吧:代码区、全局数据区、堆区、栈区。代码区:顾名思义它就是存放我们所打的代码的放置区啦。全局数据区:存放程序的全局数据和静态数据全局数据:它有个关键字extern就是声明全局量的 #include <iostream> using namespace std; extern int a=10;//这个extern一般是不用写...

2019-04-28 15:56:03 347

原创 C++中的引用

引用是什么呢?引用可以看作一个已定义变量的别名,引用说明为对象建立引用名,即别名,引用在定义初始化时与对象名绑定,程序中不能对引用重定义,一个对象的别名,从使用方式和效果上,与使用对象名一致。引用的语法为:类型 &引用名=对象名,&是引用标识符如: #include <iostream> using namespace std; void main() {...

2019-04-28 08:42:15 162

原创 C++中的switch case 语句

在接触流程控制语句switch case的时候,感觉这个很有意思,就花了点时间去慢慢的去深入了解它,并且和if语句一起嵌套使用,就找了个题目来练练手,这个就是通过输入年份和月份,来判断年份是否为闰年,并且可以知道你输入的月份有多少天。#include <iostream>using namespace std;void main(){int year, month, mon;...

2019-04-18 10:45:00 17474 6

原创 C++命名空间的认识

我对C++命名空间的一些认识。刚开始接触C++语言的时候,对命名空间,也就是所谓的namespace,并没有多大理解,也就是大概的知道下它是干嘛的。在我写第一个C++程序的时候,其实就已经接触到了namespace,可惜一开始的我并没了解那么多额外的东西,就知道输出个“Hello World”就完事了。到了后来我才知道namespace是有大学问的呢。一、下面我来以输出个“Hello Wor...

2019-04-18 09:36:04 393

CustomDelegate.rar

QT中delegate自定义委托的小例子,有注释说明和源码 简单基础部件的委托可以继承QItemDelegate,并使用这些函数的默认实现,委托编辑器可以通过使用小工具来管理编辑过程或直接处理事件来实现。 使用Delegate的原因:Qt中当用到QTreeView和QTableView等用于显示item的视图时,你要编辑一个item用到的编辑工具可能是除了默认文字编辑lineEdit以外的工具,例如button,spinBox,甚至Slider,ProgressBar,也有可能是自定义的widget。所以Qt提供了一个委托类,用来处理View中的数据展示方式

2020-09-18

空空如也

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

TA关注的人

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