- 论坛徽章:
- 0
|
原帖由 福瑞哈哥 于 2007-7-31 11:25 发表 ![]()
请看我的回复中关于「其次」的说明。
我有看,但是还是不理解,你能讲的深入一点么?有如下疑问
1 他具体是怎么来实现封装的呢?
2 能不能用一个void*来代替呢?
3 你提到说,“结构的实际大小可变”,但在代码中他并没有定义这个结构体,怎么来实现可变?
4 我刚才有测试过一个空的结构体长度为1,代码如下
-
- struct _Socket_Handle{};
- printf("sizeof(_Socket_Handle)=%d ", sizeof(_Socket_Handle));
- struct _Socket_Handle2{char i;};
- printf("sizeof(_Socket_Handle2)=%d ", sizeof(_Socket_Handle2));
- //g++结果
- sizeof(_Socket_Handle)=1 sizeof(_Socket_Handle2)=1
复制代码
为什么都是1呢,第一个空的结构体,那个1是存什么呢信息呢?字节对齐么,不像吧。
哇好像越扯越多东东出来了耶,还望大侠们解答,谢了。 |
|