技术笔记
文章平均质量分 69
aore2010
这个作者很懒,什么都没留下…
展开
-
虚函数 纯虚函数 虚基类说明
原文:http://www.cnblogs.com/ms-frank/archive/2008/01/16/1041310.html虚基类在说明其作用前先看一段代码class A{public: int iValue;};class B:public A{public: void bPrintf(){cout转载 2010-09-10 09:57:00 · 755 阅读 · 0 评论 -
TCP滑动窗口和socket缓冲区之间的关系
<br /><br />一、TCP的滑动窗口大小实际上就是socket的接收缓冲区大小的字节数<br />二、对于server端的socket一定要在listen之间设置缓冲区大小,因为,accept时新产生的socket会继承监听socket的缓冲区大小。对于client端的socket一定要在connet之前设置缓冲区大小,因为connet时需要进行三次握手过程,会通知对方自己的窗口大小。在connet之后再设置缓冲区,已经没有什么意义。<br />三、由于缓冲区大小在TCP头部只有16位来表示转载 2010-09-29 17:15:00 · 822 阅读 · 0 评论 -
库标准整数类型详细设计
<br /> <br />Exact-width integer typesInteger types having exactly the specified width typedef signed char int8_ttypedef unsigned char uint8_ttypedef signed int int16_ttypedef unsigned int uint16_ttypedef signed long int int32_ttypedef unsigned long int ui转载 2010-10-15 15:40:00 · 940 阅读 · 0 评论 -
关TCP MSS值
<br />中低端路由器tcp mss的实现原理为何经常要在内网口和外网口都要配置tcp mss 值呢?<br />PC1(192.168.0.1)―――Router――――Internet―――-www server(238.135.1.1)<br /><br />建立tcp连接的两端在三次握手时会协商tcp mss大小,具体如下:<br />pc1发出syn报文,其中option选项填充的mss字段一般为1460,同样www server收到syn报文后,会发送syn+ack报文应答,option选项填转载 2010-10-15 15:11:00 · 1152 阅读 · 0 评论 -
什么是令牌环网
<br />在这种网络中,有一种专门的帧称为“令牌”,在环路上持续地传 <br />令牌环网输来确定一个结点何时可以发送包。令牌为24位长,有3个8位的域,分别是首定界符(Start Delimiter,SD)、访问控制(Access Control,AC)和终定界符(End Delimiter,ED)。首定界符是一种与众不同的信号模式,作为一种非数据信号表现出来,用途是防止它被解释成其它东西。这种独特的8位组合只能被识别为帧首标识符(SOF)。 令牌环网的媒体接入控制机制采原创 2010-10-15 15:26:00 · 2522 阅读 · 0 评论 -
算法之合并算法
合并算法是将一个数组分解为两个排序数组, 但是每个数组中都必须排序好的 这样才能实现合并算法将数组替换原来的数组中的元素,该算法至少需要三个数组以下是实现算法的java代码:package suanfa;public class Fenzhi { int merge(int[] a, int p, int q, int r){ int n1 = q - p; //4 int n2 = r - q; //4 int [] L = new int[n1 + 1]; in原创 2010-12-09 10:42:00 · 884 阅读 · 0 评论 -
什么是rst以及rst攻击
<br />RST:(Reset the connection)用于复位因某种原因引起出现的错误连接,也用来拒绝非法数据和请求。如果接收到RST位时候,通常发生了某些错误。<br />有三个条件可以产生RST包:<br />1. 建立连接的SYN到达某端口,但是该端口上没有正在监听的服务<br /> 如:IP为192.168.1.33的主机上并没有开启WEB服务(端口号为0x50),这时我们通过IE去访问192.168.1.33,通过Wireshark抓包,可以看到,对此SYN包的回复转载 2010-11-10 17:26:00 · 2595 阅读 · 0 评论 -
32位处理器
计算机中的位数指的是CPU一次能处理的最大位数。32位计算机的CPU一次最多能处理32位数据,例如它的EAX寄存器就是32位的,当然32位计算机通常也可以处理16位和8位数据。在Intel由16位的286升级到386的时候,为了和16位系统兼容,它先推出的是386SX,这种CPU内部预算为32位,外部数据传输为16位。直到386DX以后,所有的CPU在内部和外部都是32位的了。有些人往往会弄不清在计算机中出现的“位”和Byte,KB,MB等有何关系,而它们的关系是,8位等于一字节,即8bit=1Byte 。转载 2010-11-17 18:23:00 · 588 阅读 · 0 评论 -
网络名词解释
SYN (synchronize) SYN是TCP/IP建立连接时使用的握手信号。在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,服务器使用SYN-ACK应答表示接收到了这个消息,最后客户机再以ACK消息响应。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在客户机和服务器之间传递TCP连接的第一个包,非常小的一种数据包。SYN 攻击包括大量此类的包,由于这些包看上去来自实际不存在的站点,因此无法有效进行处理。每个机器的欺骗包都要花几秒钟进行尝试方可放弃提供正常响转载 2010-09-29 18:19:00 · 1298 阅读 · 0 评论 -
sleep和wait的区别
<br />功能差不多,都用来进行线程控制,他们最大本质的区别是:sleep()不释放同步锁,wait()释放同步缩. <br /><br /> 还有用法的上的不同是:sleep(milliseconds)可以用时间指定来使他自动醒过来,如果时间不到你只能调用interreput()来强行打断;wait()可以用notify()直接唤起.转载 2010-09-29 17:42:00 · 527 阅读 · 0 评论 -
TCP缓冲区大小及限制
<br />本文介绍一些影响IP数据报大小的限制,我们先介绍这些限制,然后就他们如何影响应用进程传递的数据综合分析<br /><br />IPv4 数据报最大大小是65535(16位),包括IPv4头部。IPv6 数据报最大大小是65575,包括40个字节的IPv4头部MTU, 这是由硬件规定的,如以太网的MTU是1500字节,IPv4要求最小MTU是68字节,IPv6要求最小MTU是576字节path MTU: 指两台主机间的路径上最小MTU分片(fragmentation): 指ip数据报大小超过相应链转载 2010-09-29 17:15:00 · 1694 阅读 · 0 评论 -
C++ virtual 析构函数
<br />copy自:http://zxjgoodboy.blog.sohu.com/61482463.html<br />在此基础上稍作修改<br /> <br />C++中虚析构函数的作用<br />我们知道,用C++开发的时候,用来做基类的类的析构函数一般都是虚函数。可是,为什么要这样做呢?下面用一个小例子来说明: <br />有下面的两个类:<br />#include <iostream>using namespace std;class ClxBase{public:转载 2010-09-13 16:44:00 · 9453 阅读 · 0 评论 -
关于C++的模板操作
看了一篇关于模板的文章, 写的不错, 只是在编译的时候有点小问题做了修改, 添加了一些补充性的概念, 以便方便我更加理解模板的概念,感谢原作者提供的好文章, 原文地址:http://prglab.com/cms/pages/c-tutorial/advanced-concepts/templates.php辅助文章可以参考:http://www.kuqin.com/language/20090405/44193.html何时需要模板:我的理解是(不知道对不对) 一般需要函数通用或者类通用的时候需要模板, 还原创 2010-09-10 16:32:00 · 1240 阅读 · 0 评论 -
关于设计模式解释的不错的文章
<br />设计模式的解释:http://baike.baidu.com/view/66964.htm#5<br />.net设计模式系列文章:http://www.cnblogs.com/Terrylee/archive/2006/07/17/334911.html<br />原创 2010-09-14 16:45:00 · 558 阅读 · 0 评论 -
explicit 禁止隐式转换
explicit 关键字只能用于类内部的构造函数声明上。在构造函数的实现中不需要再声明explicit如下例:#include using namespace std;class A{public: int age; explicit A( int a) { age = a; cout原创 2010-09-08 16:26:00 · 627 阅读 · 0 评论 -
C++友元
原文: http://pcedu.pconline.com.cn/empolder/gj/c/0503/571623.html在说明什么是友元之前,我们先说明一下为什么需要友元与友元的缺点: 通常对于普通函数来说,要访问类的保护成员是不可能的,如果想这么做那么必须把类的成员都生命成为public(共用的),然而这做带来的问题遍是任何外部函数都可以毫无约束的访问它操作它,c++利用friend修饰符,可以让一些你设定的函数能够对这些保护数据进行操作,避免把类成员全部设置成public,最大限度的保护数据成转载 2010-09-09 11:19:00 · 788 阅读 · 1 评论 -
C++的static关键字
原文地址:http://wenku.baidu.com/view/a2827d37ee06eff9aef80741.html部分自己增加C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。一、面向过程设计中的static1、静态全局变量在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个静态全局变量的例子,如下://Example 1#include转载 2010-09-09 11:56:00 · 411 阅读 · 0 评论 -
C语言 const指针的一些特性
<br />copy自:c++primer<br /><br /> 1, const double *cptr; //不允许用指针来改变其所指的 const 值<br /> 为了保证这个特性,C++ 语言强制要求指向 const 对象的指针也必须具有 const 特性:const double *cptr; // cptr may point to a double that is const<br /> 这里的 cptr 是一个指向 double 类型 const 对象的指针,const 限定了 c原创 2010-09-08 14:39:00 · 917 阅读 · 0 评论 -
关于类成员变量定义为引用
在类中定义引用变量, 必须要在初始化列表中初始化该成员变量, 例如:#include using namespace std;class A{private: int &a;public: int n; A(int k):a(n){ n=k; //a = n; //error, 必须在初始化列表中初始化,看a(n) cout原创 2010-09-08 14:42:00 · 10273 阅读 · 1 评论 -
Eclipse开发C++主要快捷键
原文:http://dev.firnow.com/course/3_program/java/javajs/2007930/75140.htmlAlt+左箭头,右箭头 以在编辑窗口切换标签Alt+上下箭头, 以自动选择鼠标所在行,并将其上下移动Ctrl+f6 可以弹出菜单,上面列出可以切换的编辑窗口,这样不用鼠标也可切换Ctrl+f7 可以在视图之间切换 ,转载 2010-09-08 17:19:00 · 8446 阅读 · 0 评论 -
风雨20年:我所积累的20条编程经验
本文由伯乐在线关关译自Jonathan Danylko的网站DCS Media。Danylko是一位资深开发顾问,DCS公司的创始人。<br /> <br />从11岁时,我就一直在编程,并且一直都很喜欢技术和编程。这些年来,我积累了一些艰难又容易的经验。作为一名程序员,你或许还没这些经验,但我会把它们献给那些想从中学到更多的朋友。<br />我会持续更新这些经验,我可能还会有更多的感想,但就我这20年来看,我想下面这个列表中基本不需要增添额外的东西了。下面就是我至今最难忘的经验。<br />1. 估算解决转载 2010-11-17 18:31:00 · 771 阅读 · 1 评论 -
40 位改变了互联网的人
<br />http://news.csdn.net/a/20101113/281929.html?1289907805 (上)<br />http://news.csdn.net/a/20101116/282048.html (下)<br />转载 2010-11-17 18:10:00 · 460 阅读 · 0 评论