标签归档:ValueTree

关于ValueTree深度复制的一则教训与实例

近期在做的项目,牵扯到文件、图像,音频、文本等方面的读写、交换与处理。毋容置疑,JUCE类库的ValueTree类实在是得心应手,方便之极。但是经验有时也不靠谱,轻车熟路,漫不经心的丁点草率,都有可能付出巨大的时间代价。

这两天整合调试某模块时,发现一个奇怪的现象:每次跑起来,不管喂进去多少条“记录”(程序中的概念定为note,一个note包含多项数据),明明总文件每次都保存成功了,MVC三者之间运作协调也良好无误,前台显示正常。但是下次启动,只保留了最后的note,其他都不见了。因总文件用了加密技术,懒得写查看单元,就尝试在已有代码中跟一跟。搞了许久无果,郁闷之至。

继续阅读关于ValueTree深度复制的一则教训与实例

JUCE类库ValueTree类详解

先了解一下Identifier类。该类的对象代表一个字符串标识符(属性名称),用于按名称访问属性值。ValueTree使用本类对象作为属性值所对应的属性名称。相比数据类型标识符(比如int、double等),Identifier更加清晰直观,便于使用(一是不用写字符串的””引号,二是该属性是什么一目了然)。而相比于XML中节点的属性名称,其执行效率更高:XML的一切处理都是基于文本字符串的,而Identifier则相当于一个全新的“类型”。

继续阅读JUCE类库ValueTree类详解