- 博客(15)
- 资源 (21)
- 收藏
- 关注
原创 C++类作用域说明
迷糊了很久,终于算是有点理解了。这里做个记录。1.什么时候进行类型名字查找当编译器发现一个新的类型时,比如myint,它只查找myint出现之前的语句,不会查找其之后的语句。这就是“先声明,后使用”。例如下面的代码:#include using namespace std;class A{public: typedef int myint;public: void sh
2013-03-28 10:38:30 829 1
原创 mutable使用的场合
声明为mutable性质的成员是可以被const成员函数修改的,这个关键词的作用不是要突破const才有的,而是另有适用场合。如下:1.追踪const成员函数的执行次数:#include using namespace std;class A{public: A():c(0){} int a; mutable int c; void show()const{c++; co
2013-03-28 09:27:43 863
原创 const数据成员的初始化方法
类的const数据成员既不能和static成员一样直接给出值或者在类体外初始化,也不能在构造函数中初始化。初始化const数据成员的唯一机会是在构造函数的初始化列表中。如下所示:#include using namespace std;class A{public: A():b(10){//只能在构造函数的初始化列表中对其进行初始化,其他地方均办不到 a = c =1
2013-03-28 09:16:43 1102
原创 C++标准转换运算符const_cast
来源:http://www.cnblogs.com/ider/archive/2011/07/22/cpp_cast_operator_part2.html前面讲了C++继承并扩展C语言的传统类型转换方式,最后留下了一些关于指针和引用上的转换问题,没有做详细地讲述。C++相比于C是一门面向对象的语言,面向对象最大的特点之一就是具有“多态性(Polymorphism)”。要想很好的使
2013-03-27 17:19:39 573
原创 rip协议的问题
1.没有子网的概念;2.在路由器或者链路发生故障后,需要很长的一段时间爱你才能稳定下来。3.采用条数作为路由度量忽略了其他一些应该考虑的因素;4.度量的值最大为15,限制了可以使用RIP的网络的大小 。
2013-03-27 15:32:38 1115
原创 ping与traceroute的进程标识方法
ping只使用了网络层,并没有使用传输层,所以当一个操作系统运行多个ping的时候是不能使用端口进行进程的区分的。ping使用的是icmp的标识字段值作为进程唯一标识的。操作系统分析ping返回的icmp的标识字段的值决定将这个icmp教给系统的哪个ping进程处理。traceroute使用的是端口号,因为traceroute的icmp报文都回携带8字节udp头部,而udp头部包含了完整的完整
2013-03-27 10:08:57 848
原创 traceroute工作原理
ping只是工作在网络层,不涉及到传输层。而traceroute则涉及到了传输层,它用到了udp协议向目的主机发送一个不可达的端口。traceroute使用icmp和ip的ttl字段实现的。因为路由器是不转发ttl为0的数据包,借助这一点,traceroute向目的主机发送ttl为1的数据包,则到达第一个路由器后ttl减去1,该数据包将被丢弃,同时该路由器发送一个超时的icmp报文给trace
2013-03-27 09:23:57 1594
原创 rarp协议
arp协议接触的的频率比rarp要高的多了。这里说的是rarp。首先,arp和rarp解决的是mac地址与ip地址的映射问题。关键是什么时候需要映射呢?如果说mac地址和ip地址都已知了,那么就用不着映射了。根据网络通信过程我们可以知道一个正常的通信需要用到ip地址和mac地址两种地址。缺一都不能完成数据的传输。ok,所以在进行实际的数据传输之前就明确ip地址和mac地址是必须的。借助
2013-03-26 16:24:39 1529 1
原创 IP冲突的检测原理
《TCP/IP详解 卷一:协议》中,提到了免费ARP。所谓免费ARP,是指主机发送ARP查找自己的IP地址,通常,这个事情发生在系统引导期间进行接口配置的时候。组子网192.168.0.中,当启动ip地址为192.168.0.114的电脑时,通过在另一台电脑192.168.0.113上使用tcpdump抓包到下列内容:可看到第一行就是免费arp:192.168.0.114询问192
2013-03-26 15:29:30 3539 1
原创 arp高速缓存保存时间
《tcp/ip详解卷1:协议》指出高速缓存中完整项(应该可以理解为ping得通的地址)的生存时间一般为20分钟,不完整项(应该可以理解为ping不通的项)的生存时间一般为3分钟。
2013-03-26 11:21:52 3711
原创 STL value_type
使用stl库的时候一直对value_type这个东西理解的不是很好,可以说就是不理解。今天看了《STL源码剖析》才恍然大悟。这里稍作记录。每个STL中的类都有value_type这种东西,通俗的说value_type 就是stl容器盛装的数据的数据类型,例如:vector vec;vector::value_type x;上述两句代码,第一句是声明一个盛装数据类型是int的数据的v
2013-03-14 10:26:48 5339 2
原创 感悟:文本查询程序
这两天看了《C++ primer》的第十章“关联容器”。这是在顺序容器的基础上的进一步扩展。顺序容器设计到了vector, deque, list。顺序容器适配器则有stack, queue, priority_queue。今天看完关联容器,然后自己做了文本查询程序的例子,有些感悟,特此在这里记录下。1.stack,list,queue,map,set是我们手中的工具,我们可以用它满足
2013-03-04 18:50:16 439
原创 makr_pair
Pairs C++标准程序库中凡是“必须返回两个值”的函数, 也都会利用pair对象 classpair可以将两个值视为一个单元。容器类别map和multimap就是使用pairs来管理其健值/实值(key/value)的成对元素。 pair被定义为struct,因此可直接存取pair中的个别值.两个pairs互相比较时, 第一个元素正具有较高的优先级.
2013-03-04 10:39:48 388
原创 检查字符是否是整数
int convert(char ch){ if('0' <= ch && ch <= '9') return ch - '0'; else return -1; }
2013-03-01 22:10:14 599
Athena Framework developer Guide
2013-07-07
JSP™ ApplicationP
2011-11-06
apache+tomcat+geoserver地图配置文档
2011-04-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人