随笔分类 -  other

const在函数前与函数后的区别 [转]
摘要:[转]http://blog.csdn.net/clozxy/article/details/5679887一 const基础 如果const关键字不涉及到指针,我们很好理解,下面是涉及到指针的情况: int b = 500; const int* a = &b; [1] int const *a = &b; [2] int* const a = &b; [3] const int* const a = &b; [4] 如果你能区分出上述四种情况,那么,恭喜你,你已经迈出了可喜的一步。不知道,也没关系,我们可以参考《effective c++》item21上的做 阅读全文

posted @ 2013-03-30 15:31 龙豆 阅读(800) 评论(0) 推荐(0) 编辑

常量指针与指针常量的区别 [转]
摘要:[转]http://www.cnblogs.com/witty/archive/2012/04/06/2435311.html常量指针指针常量指向常量的指针常量三个名词虽然非常绕嘴,不过说的非常准确。用中国话的语义分析就可以很方便地把三个概念区分开。一) 常量指针常量是形容词,指针是名词,以指针为中心的一个偏正结构短语。这样看,常量指针本质是指针,常量修饰它,表示这个指针乃是一个指向常量的指针(变量)。指针指向的对象是常量,那么这个对象不能被更改。在C/C++中,常量指针是这样声明的:1)const int *p;2)int const *p;常量指针的使用要注意,指针指向的对象不能通过这个指 阅读全文

posted @ 2013-03-30 13:27 龙豆 阅读(360) 评论(0) 推荐(0) 编辑

两个容积互质的水杯可倒出任意从1到容积和的水量
摘要:即: 两个水杯A、B,容积分别为 x 和 y ,(x,y)=1。则可以通过相互倒水的方法倒出从1到(x+y)的任意自然数体积的水来。(假设睡无限)例: x=5,y=3,倒出4升水。A倒满,B空: A剩5,B剩0A的水倒满B: A剩2,B剩3B倒空,A水倒至B: A剩0,B剩2A倒满: A剩5,B剩2A的水倒满B:A剩4,B剩3 数学证明:(转自:http://www.guokr.com/question/206848/)第一种情况:水是无限量供应的。假设现在有这样两个杯子,容积分别是x和y并且互质,那么对于任何整数a和b,下面的同余方程:(用==表示同余的符号)z == a (mod x)z 阅读全文

posted @ 2013-03-17 12:22 龙豆 阅读(617) 评论(0) 推荐(0) 编辑

解题笔记(2)——部分面试题解题思路 [转]
摘要:[转]http://blog.csdn.net/wuzhekai1985/article/details/6597351这几天在网上看到一篇关于算法面试题的博客,归纳的很好,有不少经典的题目,大部分来自《编程珠玑》、《编程之美》、《代码之美》三本书。这里给出书上的解答以及一些思考。如有不对的地方,希望得到高手的指点。【一】 时间受限大部分的面试题,都是对时间复杂度有所要求的,如果有涉及,“最快”一类的字样,毫无疑问,先上时空原理,用空间来换时间。Hash,大数组,一些辅助性的空间,都是首选。在我的面试经历中,有无数次用到过Hash和大数组的。不过,通常这不会是面试官想听的唯一解法,他们紧接着十 阅读全文

posted @ 2013-03-13 23:41 龙豆 阅读(515) 评论(0) 推荐(0) 编辑

rand5()构造rand7() [转]
摘要:问题:给一个方法rand5(), 它能够等概率生成 1-5 之间的整数。 所谓等概率就是1,2,3,4,5 生产的概率均为 0.2 。现在利用rand5(), 构造一个能够等概率生成 1- 7 的方法。分析:这里有两个特别重要的点,一是 如果 rand5() + rand5(), 我们能够产生一个均匀分布的1 - 10 吗? 答案是否定的。比如对于 6来讲(4+2, 2+4, 3+3),它被生成的生成的概率比1 (1+0,0+1)要大.第二个点就是我们不可能用rand5()直接产生 1- 7 的数,不管你用加减乘除都不行。所以,我们要构造一个更大的范围,使得范围里每一个值被生成的概率是一样的, 阅读全文

posted @ 2013-03-12 10:25 龙豆 阅读(226) 评论(0) 推荐(0) 编辑

C语言的字符串分割 [转]
摘要:说起来很有意思,自认为对C语言理解得还是比较深刻的。但居然到今天才知道有个strtok函数,试用了一下突然感慨以前做了多少重复劳动。每次需要解析配置文件,每次需要分割字符串,居然都是自己去分割字符串,既累人又容易出错。感概继续学得不够全面啊!这里引用一段strtok用法:The strtok() function returns a pointer to the next "token" instr1, wherestr2contains the delimiters that determine the token. strtok() returnsNULLif no t 阅读全文

posted @ 2013-01-19 12:14 龙豆 阅读(267) 评论(0) 推荐(0) 编辑

深入浅出Java的访问者模式 [转]
摘要:一、引子 对于系统中一个已经完成的类层次结构,我们已经给它提供了满足需求的接口。但是面对新增加的需求,我们应该怎么做呢?如果这是为数不多的几次变动,而且你不用为了一个需求的调整而将整个类层次结构统统地修改一遍,那么直接在原有类层次结构上修改也许是个 不错 的主意。 但是往往我们遇到的却是:这样的需求变动也许会不停的发生;更重要的是需求的任何变动可能都要让你将整个类层次结构修改个底朝天……。这种类似的操作分布在不同的类里面,不是一个好现象,我们要对这个结构重构一下了。 那么,访问者模式也许是你很好的选择。 二、定义与结构 访问者模式,顾名思义使用了这个模式后就可以在不修改已有程序结构的... 阅读全文

posted @ 2012-12-15 17:27 龙豆 阅读(254) 评论(0) 推荐(0) 编辑

令人迷惑的AT&T的jmp:直接跳转和间接跳转 [转]
摘要:最近看链接器源码中,对位置无关代码PIC(共享库)的链接问题,发现对call和jmp很多不常用的用法,这里试验并总结了一下各种用法。我们最常用的jmp形式,就是 jmp后面跟个标签!这个没什么可说的!假如标签叫做mylabel,它的地址是0x8048377,而且有个全局变量b,b存储的内容就是mylabel的地址,而b的地址是0x80494A8。即有这样的赋值(加载)语句:movl$mylabel,%eax//把mylabel的地址加载到eax寄存器中movl%eax,b//把mylabel的地址加载到b中movl$b,%ebx//把b的地址加载到ebx寄存器中我们考虑下面的语句:1.jmpm 阅读全文

posted @ 2012-12-02 13:25 龙豆 阅读(9075) 评论(0) 推荐(0) 编辑

GCC __attribute__ 详解 [转]
摘要:1. __attribute__ ((packed)) 的作用就是告诉编译器取消结构在编译过程中的优化对齐,按照实际占用字节数进行对齐,是GCC特有的语法。这个功能是跟操作系统没关系,跟编译器有关,gcc编译器不是紧凑模式的,我在windows下,用vc的编译器也不是紧凑的,用tc的编译器就是紧凑的。例如:在TC下:struct my{ char ch; int a;} sizeof(int)=2;sizeof(my)=3;(紧凑模式)在GCC下:struct my{ char ch; int a;} sizeof(int)=4;sizeof(my)=8;(非紧凑模式)在GCC下:struct 阅读全文

posted @ 2012-11-15 13:07 龙豆 阅读(13513) 评论(0) 推荐(0) 编辑

C++:undefined reference to vtable 原因与解决办法 [转]
摘要:最近在写一套基础类库用于SG解包blob字段统计,在写完了所有程序编译时遇到一个郁闷无比的错误: MailBox.o(.text+0x124): In function `CMailBox::CMailBox[not-in-charge](CMmogAnalyseStatManager*)': ../src/MailBox.cpp:27: undefined reference to `CSgAnalyseStatBase::~CSgAnalyseStatBase [not-in-charge]()' MailBox.o(.text+0x182): In function `C 阅读全文

posted @ 2012-08-07 10:27 龙豆 阅读(50851) 评论(2) 推荐(3) 编辑

CLAPACK for Windows [转]
摘要:下载和教程(光看这两个大概就会安装和是使用了) clapack :http://icl.cs.utk.edu/lapack-for-windows/clapack/index.html lapack :http://icl.cs.utk.edu/lapack-for-windows/lapack/#libraries_mingw (把下载的文件放在VS的合适目录下即可)---- CLAPACK是LAPACK的C语言接口。LAPACK的全称是Linear Algebra PACKage,是非常著名的线性代数库。LAPACK是用Fortran写的,为了方便C/C++程序的使用,就有了LAP... 阅读全文

posted @ 2012-05-25 19:40 龙豆 阅读(2317) 评论(0) 推荐(0) 编辑

Teach Yourself Programming in Ten Years - Peter Norvig
摘要:Why is everyone in such a rush?Walk into any bookstore, and you'll see how to Teach Yourself Java in 7 Days alongside endless variations offering to teach Visual Basic, Windows, the Internet, and so on in a few days or hours. I did the following power search at Amazon.com: pubdate: after 1992 an 阅读全文

posted @ 2012-05-05 23:30 龙豆 阅读(263) 评论(0) 推荐(0) 编辑

cmd命令大全 [转]
摘要:ASSOC 显示或修改文件扩展名关联。 AT 计划在计算机上运行的命令和程序。 ATTRIB 显示或更改文件属性。 BREAK 设置或清除扩展式 CTRL+C 检查。 CACLS 显示或修改文件的访问控制列表(ACLs)。 CALL 从另一个批处理程序调用这一个。 CD 显示当前目录的名称或将其更改。 CHCP 显示或设置活动代码页数。 CHDIR 显示当前目录的名称或将其更改。 CHKDSK 检查磁盘并显示状态报告。 CHKNTFS 显示或修改启动时间磁盘检查。 CLS 清除屏幕。 CMD 打开另一个 Windows 命令解释程序窗口。 COLOR 设置默认控制台... 阅读全文

posted @ 2012-05-05 17:05 龙豆 阅读(2029) 评论(0) 推荐(0) 编辑

“带宽”在计算机中的两种不同意义 [转]
摘要:1,表示频带宽度 信号的带宽是指该信号所包含的各种不同频率成分所占据的频率范围。频宽对基本输出入系统 (BIOS ) 设备尤其重要,如快速磁盘驱动器会受低频宽的总线所阻碍。2,表示通信线路所能传送数据的能力 在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。对于带宽的概念,比较形象的一个比喻是高速公路。单位时间内能够在线路上传送的数据量,常用的单位是bps(bit per second)。计算机网络的带宽是指网络可通过的最高数据率,即每秒多少比特。 严格来说,数字网络的带宽应使用波特率来表示(baud),表示每秒的脉冲数。而比特是信息单位,由于数字设备使用二进制,则每位电平所承载. 阅读全文

posted @ 2012-05-01 22:53 龙豆 阅读(592) 评论(0) 推荐(0) 编辑

关于吞吐量和并发度 [转]
摘要:所谓高吞吐量计算,如数据库处理,这种应用需要在很短的时间内,快速地从硬盘中拿到数据,并且很快速地把结果计算出来。比如每月结算手机话费这类应用,由于是绑定在某一颗或几颗CPU上运行,只有高吞吐量、高主频的机器才能解决,而不能依靠简单地增加CPU数量。由于Power是当前世界上主频最高的CPU,4-5GHz的高主频远远高于其他处理器的2-3GHz,同时IBM POWER7处理器是当前世界上性能最高的CPU,因此非常适合这类应用,这也是POWER系统的传统优势领域。 而高并发度计算则要同时处理多个用户的需求,一般是内核数量越多,线程数量越多,所能同时处理的用户数量规模也就越大,如Web类、Java. 阅读全文

posted @ 2012-05-01 22:39 龙豆 阅读(580) 评论(0) 推荐(0) 编辑

C++中用二维数组传参时形参该怎样写 [转]
摘要:二维数组的存储方式是和一维数组没什么区别,但是用二维数组做参数,它的形参该怎样写?要注意的是:函数中的形参其实就相当于一个声明,并不产生内存分配,形参的目的就是要让编译器知道函数参数的数据类型。正确的是:void Func(int array[3][10]);void Func(int array[][10]); 可以省略第一维的大小,错误的是:void Func(int array[][]).这样的用法只能在初始化时可以用;这样写也是错误:void Func(const int m,const int n,int array[m][n]);或void Func(int m,int n,int 阅读全文

posted @ 2012-04-22 20:30 龙豆 阅读(20101) 评论(3) 推荐(3) 编辑

c语言文件操作 [转]
摘要:13.3 文件的打开与关闭 文件在进行读写操作之前要先打开,使用完毕要关闭。所谓打开文件,实际上是建立文件的各种有关信息,并使文件指针指向该文件,以便进行其它操作。关闭文件则断开指针与文件之间的联系,也就禁止再对该文件进行操作。 在C语言中,文件操作都是由库函数来完成的。在本章内将介绍主要的文件操作函数。 13.3.1 文件的打开(fopen函数) fopen函数用来打开一个文件,其调用的一般形式为: 文件指针名=fopen(文件名,使用文件方式); 其中, “文件指针名”必须是被说明为FILE 类型的指针变量; “文件名”是被打开文件的文件名; “使用文件方式”是指文件的类型和操作要求。 “ 阅读全文

posted @ 2012-04-22 01:40 龙豆 阅读(503) 评论(0) 推荐(0) 编辑

VC环境下LIB引用问题(LNK1104) [转]
摘要:模拟描述情况1、项目概要项目A是一个静态库项目,Mtd运行库项目B是一个MFC应用项目,MTD运行库有一个关于XML操作的LIB,也采用MTD运行库。这是一个已知的LIB存放在A项目的CommonLib目录下,即:A\CommonLib\Xml.Lib2、项目关系A项目引用了XML的静态库,其附加库命令如下:#pragma comment( lib, ".\\CommonLib\\xml.lib" )A项目最终要被B项目引用,那么手工拷贝此Lib其对应生成文件保存在:A\Debug\A.Lib拷贝到B项目去,目录:B\CommonLib\A.LibB项目引用A项目的,其附加 阅读全文

posted @ 2012-04-15 14:04 龙豆 阅读(400) 评论(0) 推荐(0) 编辑

POJ测试数据 [转]
摘要:1、USACO2006年November题目和测试数据的网址http://ace.delos.com/NOV062007年open赛题目和测试数据的网址http://ace.delos.com/OPEN07以此类推2、日本ACM比赛http://www.acm-japan.org/http://icpc2010.honiden.nii.ac.jp/en/past-contests3、官方网站02年网址http://icpc.baylor.edu/past/icpc2002/regionals/report.html03年以后改2002到2003即可。部分有测试数据4、德国的http://www 阅读全文

posted @ 2012-03-18 18:20 龙豆 阅读(4680) 评论(0) 推荐(1) 编辑

POJ分类 [转]
摘要:多版本pku题目分类,比较全,大家可以在这上面找题 POJ各题算法 1000 A+B Problem 送分题 49% 2005-5-7 1001 Exponentiation 高精度 85% 2005-5-7 1002 487-3279 n/a 90% 2005-5-7 1003 Hangover 送分题 62% 2005-5-7 1004 Financial Management 送分题 61% 2005-5-7 1005 I Think I Need a Houseboat 几何 68% 2005-5-7 1006 Biorhy... 阅读全文

posted @ 2012-03-13 18:59 龙豆 阅读(3564) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示