C++笔记4(网摘)字节序

1.网络字节序和主机字节序一个是高位在前,一个是低位在前。  
比如网络字节序为0x0010,   则主机字节序就是   0x1000  
2.给定系统所用的字节序称为主机字节序(host   byte   order).  
网络协议指定为网络字节序(network   byte   order)

大端小端针对多字节数据存储时字节顺序而言的  
   
所谓"Little   Endian",为INTEL所采用模式,数据的低字节存放在内存低地址中,高字节存放在高地址中,
即学X86时说的“高高低低”原则。Byte3   Byte2   Byte1   Byte0在内存中对应的是:  
   
Base   Address+0       Byte0  
Base   Address+1       Byte1  
Base   Address+2       Byte2  
Base   Address+3       Byte3  
   
所谓"Big   Endian"   ,为MOTO所采用模式,数据的低字节存放在内存的高地址,数据的高字节存放在内存
的低地址。Byte3   Byte2   Byte1   Byte0在内存中对应的是:  
   
Base   Address+0       Byte3  
Base   Address+1       Byte2  
Base   Address+2       Byte1  
Base   Address+3       Byte0  

短类型转换为长类型叫做扩展,长类型转换为短类型叫做截断。这里的长短是针对占用的字节数而
言。移位指的是在所占内存区域内的以位为单位的搬迁。

所有的消息都有两个32位的参数,可以保存光标位置、键盘码等这样的消息。

结构体默认情况下,其成员是公有的(public);类默认情况下,其成员是私有的(private)。
构造类对象时,系统要为其成员分配内存空间。

析构函数不允许有返回值,不允许带参数,并且一个类中只能有一个析构函数。析构函数用于清楚类的对象。
对一个对象来说,析构函数是最后一个被调用的成员函数。

在类中定义成员变量时,不能直接给成员变量赋初值。

函数重载(overload):函数的参数类型、参数个数不同。函数重载时,要注意函数带有默认参数这种情况。

this时一种隐含的指针,它指向对象本身,代表对象的地址。

你可能感兴趣的:(数据结构,网络协议)