如何从另一个 C++ class 访问结构?
How to access a struct from another another C++ class?
您好,我在 TreeItem 中有一个结构 class:
// TreeItem.h
class TreeItem
{
public:
struct TreePair
{
QString sa_key;
QVariant sa_value;
};
//... blabla
}
我想从另一个 class TreeModel 访问该结构 TreePair ,它的 class TreeItem 已经在其 header:
中形成
// TreeModel.h
class TreeItem;
class TreeModel : public QAbstractItemModel
{
Q_OBJECT
//..
}
// TreeModel.cpp
TreeModel::TreeModel(const QStringList &headers, const QString &data, QObject *parent)
: QAbstractItemModel(parent)
{
QVector<TreePair> rootData; // TreePair was not declared in this scope
}
我的 strcut 没有在此范围内声明??在每个 class 中它已经自动设置为
#ifndef _TREEITEM_H
#define _TREEITEM_H
#endif
由于 TreePair
嵌套在 TreeItem
中,因此需要
QVector<TreeItem::TreePair> rootData;
您好,我在 TreeItem 中有一个结构 class:
// TreeItem.h
class TreeItem
{
public:
struct TreePair
{
QString sa_key;
QVariant sa_value;
};
//... blabla
}
我想从另一个 class TreeModel 访问该结构 TreePair ,它的 class TreeItem 已经在其 header:
中形成// TreeModel.h
class TreeItem;
class TreeModel : public QAbstractItemModel
{
Q_OBJECT
//..
}
// TreeModel.cpp
TreeModel::TreeModel(const QStringList &headers, const QString &data, QObject *parent)
: QAbstractItemModel(parent)
{
QVector<TreePair> rootData; // TreePair was not declared in this scope
}
我的 strcut 没有在此范围内声明??在每个 class 中它已经自动设置为
#ifndef _TREEITEM_H
#define _TREEITEM_H
#endif
由于 TreePair
嵌套在 TreeItem
中,因此需要
QVector<TreeItem::TreePair> rootData;