SunBo

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2009年7月9日

摘要: 1. C++ 中类与结构体的区别答:类成员默认访问权限为私有(private),结构体成员默认访问权限为公共(public),其他地方完全一样。---------------------------------------------------------------------------2. 关于私有继承私有继承实际上和组合比较相像,应该说是一个设计概念,而不是具体的实现概念。具体实现中私有继承使用比较少,因为大多数情况使用组合更加清晰。公有继承意味着 is-a,私有继承意味着 is-implemented-in-terms-of (根据...实现)。参考:《C++箴言:谨慎使用私有继承 阅读全文
posted @ 2009-07-09 18:44 SunBo 阅读(9075) 评论(0) 推荐(0)

摘要: 1. 转置单向链表 (也就是反序,注意链表的边界条件并考虑空链表)。#include <stddef.h>struct listtype{ int data; struct listtype * next;};typedef struct listtype * list;/* Reverse the singly linked list *psll. */void reverse_singly_linked_list(list * psll){ list h = NULL; list p = *psll; if (!psll || !*psll) { return; } wh... 阅读全文
posted @ 2009-07-09 18:43 SunBo 阅读(453) 评论(0) 推荐(0)

摘要: 引用和指针★ 相同点:1. 都是地址的概念; 指针指向一块内存,它的内容是所指内存的地址;引用是某块内存的别名。★ 区别:1. 指针是一个实体,而引用仅是个别名;2. 引用使用时无需解引用(*),指针需要解引用;3. 引用只能在定义时被初始化一次,之后不可变;指针可变; 引用“从一而终” ^_^4. 引用没有 const,指针有 const,const 的指针不可变;5. 引用不能为空,指针可以为空;6. “sizeof 引用”得到的是所指向的变量(对象)的大小,而“sizeof 指针”得到的是指针本身(所指向的变量或对象的地址)的大小; typeid(T) == typeid(T&) 阅读全文
posted @ 2009-07-09 18:43 SunBo 阅读(195) 评论(0) 推荐(0)

摘要: 很令人惊讶,Fibonacci数列竟然可以用对数时间复杂度完成。一下是三个版本的求解:第一个是最原始的,指数时间复杂度。第二个是线性记忆的,线性时间复杂度。第三个是用矩阵记忆的,对数时间复杂度!/* Three versions of Fibonacci Number Computation Nan Wang University of Queensland*/#include <iostream>using namespace std;/* O(2^n) */unsigned int getFib1(const unsigned int);/* O(n) */unsigned i 阅读全文
posted @ 2009-07-09 18:42 SunBo 阅读(194) 评论(0) 推荐(0)

摘要: 来烟台旅游就住烟台华府家旅--经济、自助、舒适、方便--您在烟台海边的家! A型房:一室一卫厨,一双床,80元/天 B型房:一室卫厨, 一小双床, 35元/天 C型房:一室卫厨, 一小双床, 35元/天 E型房:一室卫厨, 一双床,70 元/天 F型房:一室卫厨, 一双床,50元/天 加床20元!以上价格为入住7天以上的价格!随入住时间越长价格越低! 联系电话:13864584177,QQ631230418 实景照片QQ空间http://user.qzone.qq.com/631230418 www.tripwh.com 北京->烟台火车: K285 北京站(16:30) -> 烟 阅读全文
posted @ 2009-07-09 18:41 SunBo 阅读(262) 评论(0) 推荐(0)

摘要: 01.不良少年为追妹,勇闯体坛————灌篮高手 02.一骚娘们整容三次均失败,最后被乱棍打死————三打白骨精 03.法网恢恢,警方千里缉拿残障逃犯——黑猫警长 04.无耻幼童整日胡言乱语,终日猥 亵年长女性为乐————蜡笔小新 05.七尺男惨遭毒手变侏儒 痴情女真情不变仍同居——名侦探柯南 06.销魂!白衣女子玩弄五男生一生! ——圣斗士星矢 07.哥俩一起参军,一个陆军一个空军————舒克贝塔 08.一猛男不顾劝告,酒后与猛兽肉搏!———... 阅读全文
posted @ 2009-07-09 18:40 SunBo 阅读(302) 评论(0) 推荐(0)

摘要: 给所有初、中级鼓手的建议 对初学者: 1.不要急着追求速度,不管做什么样的练习,放松和稳定的节奏是最主要的。 误区:新手在做单跳练习时,喜欢由慢至快的击打,达到最大速度时,往往是通过手臂肌肉的痉挛而实现的,这是一个恶习。 正确的方法:无论是单跳、双跳、复合跳、滚奏、压奏。都需要在节拍器的配合下练习。培养按照节拍演奏的良好习惯。 注意:如何找到一个合适的练习速度。 当你作一个练习时,能够击打30分钟而不感到疲劳,这就是你的最大极限速度。如果练习几分钟之后感到手臂手腕疲劳,就降低速度练习,直到找到这个极限速度。持续一周之后,你会发现:你的极限速度提高了。 鼓手,不是体力劳动者。只... 阅读全文
posted @ 2009-07-09 18:39 SunBo 阅读(503) 评论(0) 推荐(0)

摘要: 原创整理,转载请注明出处。 这是一个经常遇到的经典问题,这里分两个部分讲解和总结,首先对讲解现有的算法,然后再讲解一些 改进 算法。1.循环法(Iterated Count ) int bitcount (unsigned int n) { int count=0; while (n) { count += n & 0x1u ; n >>= 1 ; } return count ;} 最容易理解和想到的方法。对每一位依次判断是否为1,如果是就在count上加1。 循环的次数是常数(n的位数)。在1比较稀疏的时候效率低,可用方法2改进。 2.Bit1稀疏Spa... 阅读全文
posted @ 2009-07-09 18:37 SunBo 阅读(1773) 评论(0) 推荐(0)

摘要: 毕业生需了解薪酬待遇交金交税的情况作为毕业生,了解薪酬待遇交金交税的情况是必须的,在签约的时候,很多公司会运用一些数字游戏,误导大家的理解。比如,工资算税前还是税后的计算,一些补贴的情况。本人在此作为小结,希望对大家有帮助。薪酬待遇主要包括:工资、奖金、补贴、福利、股票(股权)、保险、公积金。 <1>工资:l 税前l 税后l 发多少个月l 年底是否有双薪<2>奖金:(奖金计入当月工资,累加后按个人所得税计算方法扣税。年终双薪也同样)l 季度奖l 年终奖l 项目奖l 明确奖金的数额(最低数)<3>补贴:l 通讯补贴l 住房补贴l 伙食补贴<4>福利 阅读全文
posted @ 2009-07-09 18:35 SunBo 阅读(285) 评论(0) 推荐(0)

摘要: 如果是grub系统引导管理器的话破解root密码启动时出现grub引导界面如图1根据提示按下字母 "e"键编辑出现如图2移动光标到第二行然后再次按字母"e"键出现如图3然后在"root=LABEL=/"后面输入linux 1 (或者single意为单用户模式)完成后敲回车键(Enter)出现如图4然后再工具提示按字母"b"键重启系统进入单用户模式如果顺利的话就直接进入到但用户模式光标在“#”后闪烁然后执行passwd root 即重置root密码 输入新的密码之后 reboot (或者init6)正常进入系统就可以 阅读全文
posted @ 2009-07-09 18:34 SunBo 阅读(220) 评论(0) 推荐(0)

摘要: 1.文件系统问题这是一个NFS的mount问题,需修改 /etc/export 文件添加目录需挂的文件系统:/home/sunyubo/ 192.12.*.*(rw,sync,no_root_squash)2.TS播出问题蓝拓扑(BlueTop)AVC->5.1和5.2US->5.2并且软件和驱动要对应 阅读全文
posted @ 2009-07-09 18:31 SunBo 阅读(165) 评论(0) 推荐(0)

摘要: 很多文章都是讲如何书写正确的代码,如何书写高效的代码,其实代码中的错误、BUG才是真正应该正视的。非常感谢下面这位分享经验的前辈!warning比error更重要!!!!引用——“只有你不给自己留退路,你才会真正关心代码质量”1、错误必须正确分类网线断掉、硬件不稳定等等都是正常情况,设计师必须预先考虑到这些,设置合理的处理/恢复逻辑。代码中的逻辑错误与以上相同,在总体设计层面上也是正常情况,没有为这些东西准备措施的就是面条设计师。2、不同错误不同对待正常情况式的异常将纳入系统异常流程,逻辑错误必须立即让它爆发,然后在影响范围之外纳入系统异常流程。举例来说: strcpy得到一个空指针,这就是. 阅读全文
posted @ 2009-07-09 18:29 SunBo 阅读(213) 评论(0) 推荐(0)

摘要: Michael Stutz (stutz@dsl.org), 作者, 顾问 2007 年 2 月 09 日 采用 10 个能够提高您的 UNIX?命令行效率的好习惯——并在此过程中摆脱不良的使用模式。本文循序渐进地指导您学习几项用于命令行操作的技术,这些技术非常好,但是通常被忽略。了解常见错误和克服它们的方法,以便您能够确切了解为何值得采用这些 UNIX 习惯。 引言 当您经常使用某个系统时,往往会陷入某种固定的使用模式。有时,您没有养成以尽可能最好的方式做事的习惯。有时,您的不良习惯甚至会导致出现混乱。纠正此类缺点的最佳方法之一,就是有意识地采用抵制这些坏习惯的好习惯。本文提出了 10 个值 阅读全文
posted @ 2009-07-09 18:29 SunBo 阅读(151) 评论(0) 推荐(0)

摘要: 两者主要在安全性上存在差别。函数名: fgets功 能: 从流中读取一字符串用 法: char *fgets(char *string, int n, FILE *stream);形参注释:*string输入数据的首地址;n-1:一次读入数据块的长度,其默认值为1k,即1024;stream文件指针序 例:#include <string.h>#include <stdio.h>int main(void){ FILE *stream; char string[] = "This is a test"; char msg[20]; /* open a 阅读全文
posted @ 2009-07-09 18:28 SunBo 阅读(1085) 评论(0) 推荐(0)

摘要: 以前我一直以为G10的光学变焦和单反相机的变焦镜头一样是无级的。后来在使用中我逐渐发现,G10的镜头的变焦并非如单反那样是无级的,并非是可以停留在任意位置上的。于是我开始对镜头的光学变焦进行测试。每次尽量使用最小的变化量,结果发现镜头的变焦确实不是无级的,而是分为14级。除了这预先设好的14级外,用户调不出其他的变焦倍数来。这14级分别是:1、6.1mm; 相当于35毫米相机的焦距是28mm2、6.785mm; 相当于35毫米相机的焦距是31.14mm3、7.407mm; 相当于35毫米相机的焦距是33.99mm4、8.108mm; 相当于35毫米相机的焦距是37.21mm5、8.89... 阅读全文
posted @ 2009-07-09 18:27 SunBo 阅读(173) 评论(0) 推荐(0)

摘要: 1. 文件描述符在内核中数据结构 在具体说dup/dup2之前, 我认为有必要先了解一下文件描述符在内核中的形态。一个进程在此存在期间,会有一些文件被打开,从而会返回一些文件描述符,从shell中运行一个进程,默认会有3个文件描述符存在(0、1、2), 0与进程的标准输入相关联,1与进程的标准输出相关联,2与进程的标准错误输出相关联,一个进程当前有哪些打开的文件描述符可以通过/proc/进程ID/fd目录查看。 下图可以清楚的说明问题: 进程表项———————————————— fd标志 文件指针 _____________________fd 0:|________|_______... 阅读全文
posted @ 2009-07-09 18:26 SunBo 阅读(196) 评论(0) 推荐(0)

摘要: 在Linux内核中,经常会看到do{}while(0)这样的语句,许多人开始都会疑惑,认为do{}while(0)毫无意义,因为他只会执行一次,加不加do{}while(0)效果是完全一样的,其实do{}while(0)主要用于宏定义中。这里用一个简单点的宏来演示:#define SAFE_FREE(p) do { free(p); p = NULL; } while(0)假设这里去掉do...while(0),即定义SAFE_FREE为:#define SAFE_FREE(p) free(p); p = NULL;那么以下代码:if (NULL != p) SAFE_... 阅读全文
posted @ 2009-07-09 17:53 SunBo 阅读(269) 评论(0) 推荐(0)

摘要: 文件压缩和归档有时候,我们需要把一组文件贮存成一个文件以便备份或传输到另一个目录甚至另一个计算机上。有时候,我们还需要把文件压缩成一个文件,因而它们仅使用少量磁盘空间并能更快地通过互联网下载。理解归档文件(archive file)和压缩文件(compressedfile)间的区别对用户来说十分重要。归档文件是一个文件和目录的集合,而这个集合被贮存在一个文件中。归档文件没有经过压缩 —它所使用的磁盘空间是其中所有文件和目录的总和。压缩文件也是一个文件和目录的集合,且这个集合也被贮存在一个文件中,但是,它的贮存方式使其所占用的磁盘空间比其中所有文件和目录的总和要少。如果你在计算机上的磁盘空间不足 阅读全文
posted @ 2009-07-09 17:48 SunBo 阅读(361) 评论(0) 推荐(0)

摘要: calloc不同于malloc,是对所分配的内存初始化。测试程序如下:*****APUE中很重要的一句话:calloc将分配的内存空间初始化为0。但是ANSI C并不保证0值与浮点0或空指针的值相同。#include <stdlib.h>#include <stdio.h>#include <unistd.h>void calloc_int(void);void calloc_char(void);void calloc_float(void);void calloc_ptr(void);int main(){ calloc_int(); calloc_ch 阅读全文
posted @ 2009-07-09 17:30 SunBo 阅读(4457) 评论(0) 推荐(0)

摘要: 当我们的程序崩溃时,内核有可能把该程序当前内存映射到core文件里,方便程序员找到程序出现问题的地方。最常出现的,几乎所有C程序员都出现过的错误就是“段错误”了。也是最难查出问题原因的一个错误。下面我们就针对“段错误”来分析core文件的产生、以及我们如何利用core文件找到出现崩溃的地方。当一个程序崩溃时,在进程当前工作目录的core文件中复制了该进程的存储图像。core文件仅仅是一个内存映象(同时加上调试信息),主要是用来调试的。当程序接收到以下UNIX信号会产生core文件:名字说明ANSI C POSIX.1SVR4 4.3+BSD缺省动作SIGABRT异常终止(abort). ... 阅读全文
posted @ 2009-07-09 17:22 SunBo 阅读(309) 评论(0) 推荐(0)