gpt4 book ai didi

c++ - ‘->’ 的基操作数具有非指针类型

转载 作者:IT老高 更新时间:2023-10-28 22:36:46 26 4
gpt4 key购买 nike

一、代码:

// ...

struct node_list {
node_list *prev;
node *target; // node is defined elsewhere in the application
node_list *next;
};

node_list nl_head;

int main() {
nl_head->prev = &nl_head;
// ...
return 0;
}

我得到一个错误:

make (in directory: #####)
g++ -Wall -std=c++11 -o main main.cc
main.cc: In function ‘int main(int, char**)’:
main.cc:38:9: error: base operand of ‘->’ has non-pointer type ‘node_list’
nl_head->prev = &nl_head;
^
Makefile:8: recipe for target 'main' failed
make: *** [main] Error 1
Compilation failed.

据我所知,我的语法是正确的。谁能指出错误?

在有人将其标记为重复之前,我知道它与其他几个问题相似,但他们的解决方案似乎都不适合我。除非我做错了,我承认这是可能的,但这就是我在这里的原因。

最佳答案

nl_head 不是指针。试试 nl_head.prev

关于c++ - ‘->’ 的基操作数具有非指针类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20590884/

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