gpt4 book ai didi

c++ - 在 ',' 错误之前预期为 '...' 或 'struct'

转载 作者:行者123 更新时间:2023-11-27 22:39:25 25 4
gpt4 key购买 nike

你好,

我第一次遇到这种错误。

// another.h
struct Item {
QString name = QString();
QString description = QString();
QVariant value = QVariant();
struct Interface {
uint id = 0;
uint pos = 0;
} mkio, uks;
struct Element {
float weight = 0;
struct Range {
uint from = 0;
uint to = 0;
} range;
int index = 0;
} element;
};

我想将这个嵌套结构存储在一个流中。所以,

// another.h
QDataStream &operator<<(QDataStream &out, const Item::Interface &interface)
{
return out << interface.id
<< interface.pos;
}
// and another overload operator>> and operator<<...
// Another fields of the `Item` struct are compiling without any error.

1) 错误:'struct' 前需要 ',' 或 '...' QDataStream &operator<<(QDataStream &out, const Item::Interface &interface)

2) another.h:34:17: error: expected primary-expression before 'struct'
返回<< interface.id
^
another.h:34:17: 错误:应为 ';'在“结构”之前
another.h:34:17: 错误:'struct' 之前需要主表达式

最佳答案

在代码的某处,很可能在库头中,隐藏了以下内容(或非常相似的内容):

#define interface struct

这让编译器看到了这个:

QDataStream &operator<<(QDataStream &out, const Item::Interface &struct)
{
return out << struct.id
<< struct.pos;
}

变得非常沮丧。

重命名参数。

关于c++ - 在 ',' 错误之前预期为 '...' 或 'struct',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50326546/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com