【发布时间】:2016-04-19 13:48:25
【问题描述】:
在this 和this 的帖子中,我描述了我想要开发的框架。
我想实现一个memoization 策略来加速一些函数的执行。
这个框架的一个重要特性应该是“记住”过去运行的计算值:假设我们编写一个程序,在其中执行字数统计函数f,输入为大文本t。在我们计算出r=f(t)(其中r 是结果)之后,我们遵循记忆逻辑,所以我们将(t,r) 存储在某个地方,假设是一个unordered_map 对象um。此后,程序终止。
在下一次执行同一程序时,不需要执行昂贵的f,因为um 已经包含(t,r),所以返回值r。
所有这一切的问题是如何在不同的执行中“记住”um 状态。
重要提示: 显然,这是一个让您了解该框架可能应用的示例,但任何记忆应用程序都必须能够正常工作。
Write a c++ object to file 是这个问题/场景的唯一解决方案,还是有其他解决方案?
【问题讨论】:
-
使用文件系统保存信息并在以后运行时读入。
-
您能否更好地解释您的解决方案?考虑 IMPORTANT 部分,不要过分关注提供的示例(报告只是为了理解这种记忆)。
-
好吧,您将不得不将数据存储在某个地方。您可以使用数据库、文件、某种云存储或其他东西,但数据必须永久存储在某个地方。
标签: c++ serialization