ipad mini cellular at&t t mobile verizon三家的都是通用的么?# Apple - 家有苹果
t*j
1 楼
[9.4] 内联函数如何在安全和速度上取得折衷?
在 C 中,你可以通过在结构中设置一个 void* 来得到“封装的结构”,在这种情况下
,指向实际数据的 void* 指针对于结构的用户来说是未知的。因此结构的用户不知
道如何解释void*指针所指内容,但是存取函数可以将 void* 转换成适当的隐含类
型。这样给出了封装的一种形式。
不幸的是这样做丧失了类型安全,并且即使仅仅是访问结构体中的一个很不重要的字段
也必须进行函数调用。(如果你允许直接存取结构的域,那么任何人都能直接存取该结
构体了,因为他们必须了解如何解释 void* 指针所指内容;这样将使改变底层数据结
构变的困难)。
~~~~~~~~~~~~~~~~~~~~这上面讲的我似懂非懂....哪位能帮我讲
讲清楚些。c里为啥要用void*啊?丧失类型安全这个我是明白的。
在 C 中,你可以通过在结构中设置一个 void* 来得到“封装的结构”,在这种情况下
,指向实际数据的 void* 指针对于结构的用户来说是未知的。因此结构的用户不知
道如何解释void*指针所指内容,但是存取函数可以将 void* 转换成适当的隐含类
型。这样给出了封装的一种形式。
不幸的是这样做丧失了类型安全,并且即使仅仅是访问结构体中的一个很不重要的字段
也必须进行函数调用。(如果你允许直接存取结构的域,那么任何人都能直接存取该结
构体了,因为他们必须了解如何解释 void* 指针所指内容;这样将使改变底层数据结
构变的困难)。
~~~~~~~~~~~~~~~~~~~~这上面讲的我似懂非懂....哪位能帮我讲
讲清楚些。c里为啥要用void*啊?丧失类型安全这个我是明白的。