1.构造函数的职责
构造函数中只进行那些没有实际意义的初始化,因为成员变量的“有意义”的值大多不在构造函数中确定。
可以的话,使用Init()方法集中初始化为有意义的数据。
优点:排版方便,无需担心类是否初始化。
缺点:
1)在构造函数中不易报告错误,不能使用异常;
2)操作失败会造成对象初始化失败,引起不确定状态;
3)构造函数内调用虚函数,调用不会派发到子类实现中,即使当前没有子...
分类:
编程语言 时间:
2014-07-28 16:23:43
阅读次数:
265
C++的水比较深,之前我一直以为C++的全局变量会像其他语言一样,非常简单只要在头文件中,定义一个变量即可,比如下面的test.h:#ifndef _TEST_H
#define _TEST_H
int a = 10;
#endif我都加上头文件保护符,总应该没有多重包含的问题了吧?没想到多个cpp文件引用同个头文件还是狂报错:error LNK2005 a 已经在 xx.obj中定义。又拿起...
分类:
编程语言 时间:
2014-07-28 16:22:43
阅读次数:
218
顺序存储充分利用满二叉树的特性,即每层的节点数分别为1、2、4、8。。。2i+1,一个深度为i的二叉树最多只能包含2i-1个节点,因此只要定义一个长度为2i-1的数组即可存储这颗二叉树。 对于普通的不是满二叉树的,那些空出来的节点对应的数组元素留空即可,因此顺序存储会造成一定的空间浪费。如下图。 显然,如果是完全二叉树,那么就不会有空间浪费的情况;若是只有右子树,那么会造成相当大...
分类:
编程语言 时间:
2014-07-28 16:21:57
阅读次数:
272
这篇博文主要讲了名称空间,说实话在接触之前一直对这方面很感兴趣,现在来好好的学习一番。
7.1 新的名称空间特性
C++新增了这样一种功能,即通过定义一种新的声明区域来创建命名的名称空间,这样做的目的之一是提供一个声明名称的区域。一个名称空间的名称不会与另外一个空间的名称发生冲突,同时允许程序的其他部分使用该名称中声明的东西。比如,...
分类:
编程语言 时间:
2014-07-28 16:21:56
阅读次数:
238
java算法插入排序优化代码 代码下载地址:http://www.zuidaima.com/share/1550463280630784.htm...
分类:
编程语言 时间:
2014-07-28 16:20:43
阅读次数:
216
网络编程中经常会涉及到二进制数据传输的问题,在C++中常用的传输方式有文本字符串和结构体封包。如果能将要发送的数据事先放进连续的内存区,然后让send函数获取这片连续内存区的首地址就可以完成数据的发送了,文本字符串如char型数组,以字节为单位,在内存中是顺序存储的,所以可以直接用send函数发送。但是如果要同时发送多个不同类型的数据时,它们在内存中存储的地址是随机的,不是顺序存储的,而且它们之间...
分类:
编程语言 时间:
2014-07-28 16:17:43
阅读次数:
222
核心提示:在Eclipse中查看JDK类库的源代码!!! 设置: 1.点 window- Preferences - Java - Installed JRES 2.此时Installed JRES右边是列表窗格,列出了系统中的 JRE 环境,选择你的JRE,然后点边上的 Edit..., 会出现一个窗口(Edit JRE) 3.选中rt.jar文件的这一项
在Eclips...
分类:
编程语言 时间:
2014-07-28 16:16:23
阅读次数:
217
/**
* 功能:文本查询程序
* 时间:2014年7月23日10:26:09
* 作者:cutter_point
*/
#include
#include
#include
#include
#include
#include
#include
using namespace std;
/*
Alice Emma has long flowing red hair.
Her Daddy s...
分类:
编程语言 时间:
2014-07-28 16:15:33
阅读次数:
387
括号匹配是栈最典型的应用了。
其实思路很简单,就是遇到一个左括号就压栈,遇到一个右括号就弹栈,看是否匹配就好了。最后检查下栈里是不是有剩余的括号就行了。...
分类:
编程语言 时间:
2014-07-28 16:13:13
阅读次数:
264
Spring的属性注入主要有三种:
1、setter方式注入
2、构造方法注入
3、注解注入,注解注入又分为:
①java annotation ②spring annitation
其中第三种中的java annotation是我们推荐使用的方法。
下面就来一一介绍这些注入方式的使用方法:
setter方式注入步骤:
①首先在拥有属性的类中建立属性的set方法。
②在配...
分类:
编程语言 时间:
2014-07-28 16:11:50
阅读次数:
295
java.util.Date为java时间接口,已知的实现类包括Date,Time,TimeStamp
Calendar calendar=Calendar.getInstance();
DateFormat df=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date dateA=new Date(); //初始化dataA为当...
分类:
编程语言 时间:
2014-07-28 16:08:43
阅读次数:
779
属性注入是Spring中较为重要的一项功能。下面就讲讲简单属性注入和集合属性注入的具体操作。
步骤:
①首先不管是简单属性注入还是集合属性注入,都要使用到property标签
②然后如果是简单属性注入的话直接给property标签的value值赋值即可,其中的value的类型我们可以不指定,框架会自 动识别,当然我们也可以指定,指定的形式如:java.lang.Strin...
分类:
编程语言 时间:
2014-07-28 16:06:23
阅读次数:
218
Python 3.X新增加了一个特性(Feature),叫作函数注释 Function Annotations
它的用途虽然不是语法级别的硬性要求,但是顾名思义,它可做为函数额外的注释来用。
Python中普通的函数定义如下:
def func(a, b, c):
return a + b + c
>>> func(1, 2, 3)
6
添加了函数注释的函数会变成如下形式...
分类:
编程语言 时间:
2014-07-28 16:05:23
阅读次数:
251
mybatis3整合spring后如何使用自带连接池...
分类:
编程语言 时间:
2014-07-28 16:04:03
阅读次数:
251
早上经理给我考了个项目,让我部署,遇到了这个问题
解决办法:由于 我的是JDK 6 TOMCAT 6 而他的是JDK 7 TOMCAT 7 ,我不想换JDK,
于是修改配置文件就OK了
找到项目目录下的.settings 文件夹里面的org.eclipse.wst.common.project.facet.core.xml
修改如下:...
分类:
编程语言 时间:
2014-07-28 16:00:33
阅读次数:
249
lambda可以定义一个匿名函数,而def定义的函数必须有一个名字。这应该是lambda与def两者最大的区别。
与Javascript不同的是,python中匿名函数与非匿名函数需要使用不同的语法来定义。这是因为:
lambda是一个expression,不是一个statement。
lambda is an expression, not a statement.
...
分类:
编程语言 时间:
2014-07-28 16:00:23
阅读次数:
305