-
Java之集合框架使用细节及常用技巧
所属栏目:[教程] 日期:2021-11-19 热度:109
集合类的由来: 对象用于封装特有数据,对象多了需要存储,如果对象的个数不确定。 就使用集合容器进行存储。 集合特点: 1,用于存储对象的容器。 2,集合的长度是可变的。 3,集合中不可以存储基本数据类型的值。 集合容器因为内部的数据结构不同,有多种具[详细]
-
Java异常分类及针对性处理措施
所属栏目:[教程] 日期:2021-11-19 热度:110
异常的分类 1、 编译时被检测异常:只要是Exception和其子类都是,除了特殊子类RuntimeException体系。 此类异常在处理时必须进行声明或进行捕捉 这种问题一旦出现,希望在编译时就进行检测,让这种问题有对应的处理方式。 这样的问题,都可以针对性的处理。[详细]
-
Yii 不完全解决措施
所属栏目:[教程] 日期:2021-11-19 热度:71
此文意在记录 Yii 开发过程中的小问题解决方案,不全面,不权威,不是教程。自己写过,觉得可以解决问题,以后也可能用上,就记记吧。 1. Yii 中 Js 和 Css 文件的引入。 我们就从最简单的问题开始吧,说起来也不是问题,只是语法罢了。假设我们的 js 文件都[详细]
-
二叉树:中序遍历,递归和非递归达成
所属栏目:[教程] 日期:2021-11-19 热度:151
. 1、二叉树定义: typedef struct BTreeNodeElement_t_ { void *data; } BTreeNodeElement_t; typedef struct BTreeNode_t_ { BTreeNodeElement_t *m_pElemt; struct BTreeNode_t_ *m_pLeft; struct BTreeNode_t_ *m_pRight; } BTreeNode_t; 2、中序遍历 定[详细]
-
C++中map的使用详解介绍
所属栏目:[教程] 日期:2021-11-19 热度:155
项目需要,map的使用详解 键值对 匹配 1 头文件 #include map 2、map的功能 自动建立Key - value的对应。key 和 value可以是任意你需要的类型。 根据key值快速查找记录,查找的复杂度基本是Log(N),如果有1000个记录,最多查找10次,1,000,000个记录,最多[详细]
-
Python 报错 Using deprecated class PySimpleApp 解决措施
所属栏目:[教程] 日期:2021-11-19 热度:103
今天在做Python 脚本练习的时候,因为是复制网上代码来学习,运行脚本时遇到 Python 提示如下这一行报错代码: Python 报错 Using deprecated class PySimpleApp 解决办法 解决方法也很简单,就是把倒数以下几行代码中的把wx.PySimpleApp() 替换为 app = wx.A[详细]
-
借助OpenCV检测图像中的长方形画布或纸张并提取图像内容
所属栏目:[教程] 日期:2021-11-19 热度:82
也就是在一张照片里,已知有个长方形的物体,但是经过了透视投影,已经不再是规则的长方形,那么如何提取这个图形里的内容呢?这是个很常见的场景,比如在博物馆里看到一幅很喜欢的画,用手机找了下来,可是回家一看歪歪斜斜,脑补原画内容又觉得不对,那么[详细]
-
Effective Java -助力覆盖equals
所属栏目:[教程] 日期:2021-11-19 热度:168
平时很难遇到需要覆盖equals的情况。 什么时候不需要覆盖equals? 类的每个实例本质上是唯一的,我们不需要用特殊的逻辑值来表述,Object提供的equals方法正好是正确的。 超类已经覆盖了equals,且从超类继承过来的行为对于子类也是合适的。 当确定该类的equ[详细]
-
Effective Java - 谨慎达成Comparable接口
所属栏目:[教程] 日期:2021-11-19 热度:153
类实现了Comparable接口就表明类的实例本身具有内在的排序关系(natural ordering)。 因此,该类可以与很多泛型算法和集合实现进行协作。 而我们之需要实现Comparable接口唯一的方法compareTo。 以下是相关规则: sgn(x.compareTo(y)) = -sgn(y.compareTo(x))[详细]
-
Delphi中关于INI文件的格式以及注释说明介绍
所属栏目:[教程] 日期:2021-11-19 热度:191
为什么要用INI文件?如果我们程序没有任何配置文件时,这样的程序对外是全封闭的,一旦程序需要修改一些参数必须要修改程序代码本身并重新编译,这样很不好,所以要用配置文件,让程序出厂后还能根据需要进行必要的配置;配置文件有很多如INI配置文件,XML配[详细]
-
Delphi中写日志文件log概括
所属栏目:[教程] 日期:2021-11-19 热度:70
思想:我们在写日志文件的时候习惯将所有的日志文件全部Add到一个List链表里面,然后用定时器定时从List链表中取数据写文件。 所以我使用TStringList,将所以日志Add到TStringList里面,然后用定时器从TStringList里面取数据写日志。 procedure Tfoffertool.O[详细]
-
全方位比较PHP的Node.js的利弊
所属栏目:[教程] 日期:2021-11-19 热度:115
PHP vs Node.js之争由来已久,前者用于动态网页开发,后者是用来编写高性能网络服务器的JavaScript工具包,到底他们如何?InfoWorld测试中心的Peter Wayner日前撰文指出两者的优势所在,不妨一看。 以下为译文: 这是典型好莱坞情节:分道扬镳的两位老朋友间[详细]
-
Spring Security介绍
所属栏目:[教程] 日期:2021-11-19 热度:101
1. Spring Security 是什么? Spring Security是一个强大的和高度可定制的身份验证和访问控制框架,它的前身是 Acegi Security。 Spring Security着重于为Java应用程序提供身份验证和授权。身份验证是为用户建立一个他所声明的主体的过程(主体一般式指用户[详细]
-
C++前置++与后置++的差异与重载
所属栏目:[教程] 日期:2021-11-18 热度:155
C++前置++与后置++的区别与重载 ++属于单目运算符,前置与后置的实现代码不一样,下面以整数自增为例: // 前置++,返回自增后的值,且返回的是一个左值 int operator++(){ *this += 1; return *this; } // 后置++,返回自增前的值,且返回的是一个右值 cons[详细]
-
详解:浅拷贝 及 深拷贝的传统写法
所属栏目:[教程] 日期:2021-11-18 热度:200
浅拷贝会造成指针悬挂的问题。 举个例子:两个对象是s1和s2的指针_str都指向new开辟的同一块空间,如下图,主程序结束时,对象逐个撤销,先撤销对象s2,会调用析构函数释放动态分配的内存;再撤销对象s1时,s1._str所指向的内存空间已经是无法访问了,而s2._s[详细]
-
畅聊:浅拷贝 及 深拷贝的传统写法
所属栏目:[教程] 日期:2021-11-18 热度:114
浅拷贝会造成指针悬挂的问题。 举个例子:两个对象是s1和s2的指针_str都指向new开辟的同一块空间,如下图,主程序结束时,对象逐个撤销,先撤销对象s2,会调用析构函数释放动态分配的内存;再撤销对象s1时,s1._str所指向的内存空间已经是无法访问了,而s2._s[详细]
-
深入Java关键字this的用法的概括
所属栏目:[教程] 日期:2021-11-18 热度:127
在 Java 程序设计中经常会见到this的使用,this使得程序设计变得规范、简单、灵活。但是在使用过程中,在不同场合它的含义并不完全相同,使用不当还会出现错误,本文对this的几种用法和出现的问题进行了分析详解。 关键词:类;对象;this;成员变量;方法;[详细]
-
C/C++程序编译步骤
所属栏目:[教程] 日期:2021-11-18 热度:99
1. 预处理 预处理相当于根据预处理指令组装新的C/C++程序。经过预处理,会产生一个没有宏定义,没有条件编译指令,没有特殊符号的输出文件,这个文件的含义同原本的文件无异,只是内容上有所不同。 读取C/C++源程序,对其中的伪指令(以#开头的指令)进行处理[详细]
-
在C++中子类继承和调用父类的析构函数技巧
所属栏目:[教程] 日期:2021-11-18 热度:184
派生类的析构函数的功能是在该对象消亡之前进行一些必要的清理工作,析构函数没有类型,也没有参数。析构函数的执行顺序与构造函数相反。 代码1: #include using namespace std; class A { public: A(int i) { cout 构建 A i endl; } A() { cout 构建 A endl[详细]
-
Spring+Hibernaet+MySQL事务处理中遇到问题及处理
所属栏目:[教程] 日期:2021-11-18 热度:102
spring的事务处理本来就是依赖于底层的实现,比如hibernate及数据库本身。所以,当使用MySQL数据库时,首先要确定的是,所操作的对象表是innodb格式的。 1. read-only方法中进行更新或插入操作时,并不总报错 在service层的方法中定义了事务,并且在spring配[详细]
-
如何借助Python生成随机密码
所属栏目:[教程] 日期:2021-11-18 热度:75
写了个程序,主要是用来检测MySQL数据库的空密码和弱密码的, 在这里,定义了三类弱密码: 1. 连续数字,譬如123456,在get_weak_num中实现 2. 连续字母,譬如abcdef,在get_weak_character中实现 当然,个数都是随机的。 3. 数字和字母随机组合。在get_weak_[详细]
-
60行JavaScript代码俄罗斯方块游戏全介绍
所属栏目:[教程] 日期:2021-11-18 热度:99
早就听说网上有人仅仅用60行JavaScript代码写出了一个俄罗斯方块游戏,最近看了看,今天在这篇文章里面我把我做的分析整理一下(主要是以注释的形式)。 我用C写一个功能基本齐全的俄罗斯方块的话,大约需要1000行代码的样子。所以60行乍一看还是很让人吃惊[详细]
-
沃尔夫勒姆自动机时空图输出 C语言达成
所属栏目:[教程] 日期:2021-11-18 热度:90
沃尔夫勒姆自动机时空图输出 C语言实现 #include stdio.h #include stdlib.h #include time.h #include conio.h //行宽度 #define ROW_LEN 38 //比特位域结构 typedef struct bits bits; struct bits{ unsigned int c0 : 1; unsigned int c1 : 1; unsigned i[详细]
-
BKDR Hash 函数达成
所属栏目:[教程] 日期:2021-11-18 热度:158
KR一书中提出的BKDR Hash算法,这里给出C函数实现,实际用的时候分布比较好而且实现简单。唯一不明白的就是为什么选择131这种模式的数字作为种子,隐隐有沃尔夫勒姆31号自动机的似曾相识的感觉。 //BKDR Hash 函数 unsigned int bkdr_hash(const char * str)[详细]
-
分析关于C#中Foreach的本质
所属栏目:[教程] 日期:2021-11-18 热度:87
一.为什么数组和集合可以使用foreach遍历 01. 因为数组和集合都实现了IEnumerable接口,该接口中只有一个方法,GetEnumerator() 02.数组类型是从抽象基类型 Array 派生的引用类型。由于此类型实现了 IEnumerable ,因此可以对 C# 中的所有数组使用 foreach 迭[详细]