2 mjh3363033 mjh3363033 于 2016.02.08 21:49 提问

为什么说C不能很好的实现数据与操作的分离

今天看钱能的教材是,第一章里的第二页中,有写到,程序中的数据与分离不能很好的被C实现了?

1个回答

caozhy
caozhy   Ds   Rxr 2016.02.08 21:53

这主要是说,C不支持面向对象,不能像C++那样定义类,把数据和对应的操作封装成独立的实体。
在C语言中,所有的数据和函数都混合在一起。
但是注意,这个是从语法层面来说的。从设计层面说,你同样可以将数据和操作分离,编写良好风格的C代码,只是你需要更多的代码和更多的注意。你可以人肉去实现面向对象的代码。
相反,用C++也不意味着你一定能做到数据和操作的分离。如果你只定义一个类,并且把所有东西都装进去,那么和C不用对象又一样了。

mjh3363033
mjh3363033 我也是这么觉得,通过结构体之类的,我也还是可以分离的
接近 2 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!