为什么没有完美的不变式的数据可以使用struct

申祷无 2013-08-26 04:23:42
《C++程序设计原理与实践》中文版 9.4.3

原文(189页):
判定有效值的规则成为不变式。……如果我们不恩给你想出一个完美的不变式,那我们可能就要处理普通数据。如果是这样,我们可以使用struct。
英文原文:
A rule for what constitutes a valid value is called an invariant. ... If we can't think of a good invariant, we are probably dealing with plain data. If so, use a struct.

因为这种对象可能取什么值都可以么?还有其他的情况么?
...全文
325 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
申祷无 2013-09-25
  • 打赏
  • 举报
回复
求回复。字数字数字数。
申祷无 2013-09-23
  • 打赏
  • 举报
回复
没有非常满意的答案。
lm_whales 2013-09-09
  • 打赏
  • 举报
回复
有规则的,规范一下,没有的糊弄以下,大概就是这个意思吧!!
申祷无 2013-09-09
  • 打赏
  • 举报
回复
引用 4 楼 jerry_dqh 的回复:
[quote=引用 3 楼 shendaowu 的回复:] [quote=引用 2 楼 jerry_dqh 的回复:] 构成一个有效值的规则称为不定式。plain data应该是指POD,即是C形式的struct, 对于这名话的理解来讲,感觉要联系上下文,不太明白讲啥的。手头上没有这本书,不然可以看看了。
这本书网上能下载到英文版的。[/quote] 意思挺清楚,对于有些如date的类,如果不你能很好地设计出规则,也就是invariant,并不能完全保证能正确构建正确的数据,比如,对Date类,有闰年,格鲁吉亚日历,基本我想还有中国的农历,无法有效的rule也表示所有的情况,所以我们最好的设计往往是使用struct。[/quote]你好像只是复述了一下。
lpcads 2013-09-09
  • 打赏
  • 举报
回复
6楼见解精辟
申祷无 2013-08-28
  • 打赏
  • 举报
回复
引用 2 楼 jerry_dqh 的回复:
构成一个有效值的规则称为不定式。plain data应该是指POD,即是C形式的struct,
对于这名话的理解来讲,感觉要联系上下文,不太明白讲啥的。手头上没有这本书,不然可以看看了。
这本书网上能下载到英文版的。
碼上道 2013-08-28
  • 打赏
  • 举报
回复
引用 3 楼 shendaowu 的回复:
[quote=引用 2 楼 jerry_dqh 的回复:] 构成一个有效值的规则称为不定式。plain data应该是指POD,即是C形式的struct, 对于这名话的理解来讲,感觉要联系上下文,不太明白讲啥的。手头上没有这本书,不然可以看看了。
这本书网上能下载到英文版的。[/quote] 意思挺清楚,对于有些如date的类,如果不你能很好地设计出规则,也就是invariant,并不能完全保证能正确构建正确的数据,比如,对Date类,有闰年,格鲁吉亚日历,基本我想还有中国的农历,无法有效的rule也表示所有的情况,所以我们最好的设计往往是使用struct。
碼上道 2013-08-26
  • 打赏
  • 举报
回复
构成一个有效值的规则称为不定式。plain data应该是指POD,即是C形式的struct, 对于这名话的理解来讲,感觉要联系上下文,不太明白讲啥的。手头上没有这本书,不然可以看看了。
逸萌 2013-08-26
  • 打赏
  • 举报
回复

65,210

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧