
C&C++
sunxinyu
这个作者很懒,什么都没留下…
展开
-
-拷贝构造函数
拷贝构造函数,经常被称作X(X&),是一种特殊的构造函数,他由编译器调用来完成一些基于同一类的其他对象的构件及初始化。它的唯一的一个参数(对象的引用)是不可变的(因为是const型的)。这个函数经常用在函数调用期间于用户定义类型的值传递及返回。拷贝构造函数要调用基类的拷贝构造函数和成员函数。如果可以的话,它将用常量方式调用,另外,也可以用非常量方式调用。 在C++中,下面三种对转载 2009-10-27 20:14:00 · 628 阅读 · 0 评论 -
C Linux 文件加锁 lock fcntl
Linux系统中,文件上锁的函数有两个Lock和fcntl,前者主要是加建议性锁,后者既可以加建议性锁(默认)也可以加强制性锁,而且她还可以给某一记录进行上锁,即所谓的记录锁。fcntl文件锁有两种类型:建议性锁和强制性锁 建议性锁是这样规定的:每个使用上锁文件的进程都要检查是否有锁存在,当然还得尊重已有的锁。内核和系统总体上都坚持不使用建议性原创 2009-10-27 20:16:00 · 7345 阅读 · 1 评论 -
C++中函数指针数组的使用
C++中函数指针数组的使用 来源:电脑教程在线(http://www.linuxdiyf.com/1/)作者:linux原文:C++中函数指针数组的使用(http://www.linuxdiyf.com/1/article/2006/0702/article_731.html)笔者在开发某软件过程中遇到这样一个问题,前级模块传给我二进制数据,输入参数为 char* buffer和 int转载 2010-05-27 12:39:00 · 602 阅读 · 0 评论 -
打造最快的Hash表
<br /> <br />打造最快的Hash表<br />一个简单的问题:有一个庞大的字符串数组,然后给你一个单独的字符串,让你从这个数组中查找是否有这个字符串并找到它,你会怎么做?有一个方法最简单,老老实实从头查到尾,一个一个比较,直到找到为止,我想只要学过程序设计的人都能把这样一个程序作出来,但要是有程序员把这样的程序交给用户,我只能用无语来评价,或许它真的能工作,但...也只能如此了。<br />最合适的算法自然是使用HashTable(哈希表),先介绍介绍其中的基本知识,所谓Hash,一般是一个整数转载 2010-06-07 12:25:00 · 493 阅读 · 0 评论 -
打造最快的Hash表
<br /> <br />打造最快的Hash表<br />一个简单的问题:有一个庞大的字符串数组,然后给你一个单独的字符串,让你从这个数组中查找是否有这个字符串并找到它,你会怎么做?有一个方法最简单,老老实实从头查到尾,一个一个比较,直到找到为止,我想只要学过程序设计的人都能把这样一个程序作出来,但要是有程序员把这样的程序交给用户,我只能用无语来评价,或许它真的能工作,但...也只能如此了。<br />最合适的算法自然是使用HashTable(哈希表),先介绍介绍其中的基本知识,所谓Hash,一般是一个整数转载 2010-06-07 12:26:00 · 613 阅读 · 0 评论 -
C语言变量声明加冒号的用法
有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。例如在存放一个开关量时,只有0和1 两种状态, 用一位二进位即可。为了节省存储空间,并使处理简便,C语言又提供了一种数据结构,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几 个不同的区域,并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。这样就可以把几个不同的对象用一个字节的二进制位域来表示。一、位 域的定义和位域变量的说明位域定义与结构定义相仿,其形式为:struct 位域结构名 { 位域列表转载 2010-10-13 13:44:00 · 18951 阅读 · 2 评论 -
32位/64位机上常用数据类型字节数(C语言)
<br />可用如sizeof(char),sizeof(char*)等得出<br />32位编译器<br />char :1个字节<br />char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器)<br />short int : 2个字节<br />int: 4个字节<br />unsigned int : 4个字节<br />float: 4个字节<br />double: 8个字节<br />long: 4个字节<br />long l转载 2010-10-13 15:46:00 · 1656 阅读 · 0 评论 -
C中位域Struct操作
<br />位域可以按需占用存储空间。可以多个变量公用一个存储单位,比如单字节,双字节等等。以下是试验的样例程序。<br /> <br /> <br />#include <cstdlib><br />#include <iostream><br />#pragma pack(2) //此处2,使得位域以2字节对齐。如果是1,则以1字节对齐。 <br />using namespace std;<br /> struct BitVariable {<br /> unsigned shor原创 2010-12-29 17:00:00 · 1494 阅读 · 0 评论