- 博客(8)
- 收藏
- 关注
原创 C++中的拷贝构造函数
C++中的拷贝构造函数跟Java中的对象克隆(clone)是一样的,它们的目的都是通过一个类的实例来获取它的一个副本或者叫拷贝,这个副本或拷贝跟原来的对象拥有相同的数据成员。 在普通的变量赋值中,比如int i=5; int j=i;我们可以用变量i的值去初始化j的值,此时,变量j就叫做变量i的一个拷贝,修改j的值不会影响i的值。实例的初始化也可以通过其他实例进行初始化,即用一个实例去构造另一个实例。在构造的时候,将已存在的实例中的数据成员值传递给新的实例,将其初始化为与已存在的实例具有相同数据的实例
2010-08-22 17:02:00
697
转载 动态链接库dll 静态链接库lib 动态导入库lib
目前以lib后缀的库有两种,一种为静态链接库(Static Libary,以下简称“静态库”),另一种为动态连接库(DLL,以下简称“动态库”)的导入库(Import Libary,以下简称“导入库”)。 静态库是一个或者多个obj文件的打包,所以有人干脆把从obj文件生成lib的过程称为Archive,即合并到一起。比如你链接一个静态库,如果其中有错,它会准确的找到是哪个obj有错,即静态lib只是壳子。 动态库一般会有对应的导入库,方便程序静态载入动态链接库,否则你可能就需要自己LoadLibary调入
2010-08-07 15:58:00
420
原创 acm1001 Exponentiation
<br />题目是求一个实数R的n次方,其中(0.0<R<99.999 0<n<=25)。<br />这道题目的提议很明显,是一个精度问题,要想精确的表示精度,最好的方法就是用字符串去存储结果。思路很简单,就是要写一个能够计算两个字符串相乘的函数,然后根据n的大小来计算调用的次数。代码如下(本人水平有限,代码会有一定的冗余,仅供参考):<br />#include <iostream>#include <string>#include <cmath>using namespace std;
2010-07-24 22:40:00
820
原创 C++中next_permutation的实现
在做算法题目的时候,我们经常会遇到穷举一个集合的所有全排列的情况,最常用的方法是用递归的方式来实现。代码如下所示,void permutation(int l, int n){ if(l >= n) { for(int i = 0; i 这是用递归的方法实现的。这个方法的缺点在于不能排除重复的排列,比如{1, 1, 2, 3}这个集合,排列数应该是12,但是按照上述方法就会弄出24种排列,其中的12种都是重复的。原因是这个求全排列
2010-07-16 10:24:00
3799
1
原创 Comparable接口和Comparator接口
看了一些网上写的关于Comparable接口和Comparator接口和Comparator接口的比较和区别,感觉写的不是很好,没有和说到点子上。本人也一直都在使用Comparable接口实现排序,虽然知道Comparator接口也可以实现这个功能,但是从来没用过,碰巧今天在做Topcoder的时候遇到了这么一个必须使用Comparator接口的题目,让我真正理解了Comparable接口
2010-04-16 09:46:00
3600
原创 单例模式(Singleton)--Java实现
单例模式的实现方式有很多种,在这里介绍最简单的两种。 单例模式能够确保一个类只有一个实例(正常情况我们可以new出一个类的无数个实例),自行提供这个实例并向整个系统提供这个实例。下面介绍单例模式的实现方法: 1. 单例模式有两种实现方式:一种是将类的构造法方法私有化,用一个私有的类变量instance保存类的实例,在加载类时,创建类的实例,并将实例赋给instance,
2010-04-11 19:00:00
622
原创 管理RPM软件包
RPM(Red hat Package Manager),它用于管理.rpm格式的软件包。这个软件包管理工具用于绝大多数的Linux发行版本,如Red Hat、OpenSUSE等。下面简要介绍其使用方法及其相关注意事项。1. 安装软件包使用rpm –i命令安装一个软件包。尽管安装工作只需要一个-i就够了,但人们通常还习惯加上-v和-h这两个选项。-v选项用于显示rpm当
2010-04-06 16:13:00
981
转载 Java实现的全排列和排列
关于全排列和排列的问题已经困扰我n久了,虽然在组合数学中很简单,但是要想编程来实现还真不那么简单。排列组合的方法在做算法题的时候经常能够遇到,主要是对结果的所有可能进行穷举,穷举的方法一般都离不开排列和组合。下面给出一个比较好的用递归实现的全排列和排列代码,个人认为还是比较容易理解的。全排列--Java实现public class AllSort{ public stat
2010-03-28 09:55:00
20315
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人