【问题标题】:convert MATLAB cell type to c++将 MATLAB 单元格类型转换为 c++
【发布时间】:2012-03-03 05:35:07
【问题描述】:

我正在使用Armadillo 转换 C++ 中的 MATLAB 程序以用于矩阵代数。

我卡在cell 类型上。有人有一些提示吗?

【问题讨论】:

    标签: c++ matlab cell armadillo


    【解决方案1】:

    那是因为 'cell' 并不是一个真正的类型——它是一个占位符,可以放置任何你想在其中放置的东西。在 C# 和 Python 等语言中,我能想到的最接近的东西是“元组”,它本质上可以包含匿名类型。

    由于 C++ 没有内置的元组类型,我建议你看看Boost,它是一个非常全面、成熟和开源的库,几乎可以满足你在 C++ 中需要的任何东西。在 Boost 下,查看 Fusion 库,或者如果您需要不简单的东西,请查看 Tuple 库。

    EDIT 正如 Matt 在下面提到的,从 TR1 开始,元组是 C++ 标准库的一部分。请参阅 Matt 的链接 here

    【讨论】:

    • 有什么理由离开the standard
    • @Matt:不,不是。它只是让我忘记了 TR1 有元组。
    【解决方案2】:

    犰狳有field 类!

    【讨论】:

      【解决方案3】:

      您的单元格数据可能会很好地转换为 C++ 对象。我建议您检查您的单元格包含的内容,看看您是否可以将其表示为一个类。然后,您就可以创建对象的向量/数组/矩阵,并让它们像 MATLAB 中的单元格一样处理。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-22
        • 1970-01-01
        • 2012-06-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多