【问题标题】:C++ and ODB: Creating a vector of objectsC++ 和 ODB:创建对象向量
【发布时间】:2017-05-17 06:40:57
【问题描述】:

我有一个名为 TimelineItem 的对象,它有一个名为linked_items_ 的数据字段,其中包含一个 TimelineItem 类型的向量。这是为了表示时间轴中链接到原始项目(重复项目)的项目。

我很难让 ODB 了解我的意图。它给了我一个错误“无法将数据成员“linked_items_”中使用的 C++ 类型“::TimelineItem”映射到 PostgreSQL 数据库类型。这是我的代码:

#pragma db object
class TimelineItem {

    // Timeline Item data fields
    private:
        // Default constructor for ODB
        TimelineItem() {}

        friend class odb::access;

        #pragma db id auto
        unsigned long id_;

        Event *event_;
        time_t start_;
        time_t end_;
        TimelineItem *linked_;
        vector<TimelineItem> linked_items_;

我知道它不知道“TimelineItem”是什么类型,因此无法将其映射到数据库端,但是我正在努力寻找文档或解决此问题的方法。

感谢任何反馈。

谢谢!

【问题讨论】:

    标签: c++ postgresql odb


    【解决方案1】:

    我认为您的vector&lt;TimelineItem&gt; linked_items_; 实际上应该是vector&lt;TimelineItem*&gt; linked_items_;

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-28
      • 1970-01-01
      相关资源
      最近更新 更多