gpt4 book ai didi

c++ - 不匹配 'operator=='

转载 作者:行者123 更新时间:2023-11-30 04:20:25 24 4
gpt4 key购买 nike

我遇到了完全未知的错误。我在网上搜索了关于这个错误的资料,但是出来的东西都不行,错误在下面这行代码:

if(opcion==1 && ((*Lista)->PrimerNodo->siguiente)==((*Lista)->UltimoNodo))

我收到的错误信息是:

error: base operand of `->` has non-pointer type `ListaCircular`

指针 *ListaListaCircular 类型,而ListaCircular 是一个如下构建的结构:

struct ListaCircular{
Nodo *PrimerNodo,*UltimoNodo;
ListaCircular(){
PrimerNodo->anterior=UltimoNodo;
PrimerNodo->siguiente=UltimoNodo;
UltimoNodo->anterior=PrimerNodo;
UltimoNodo->siguiente=PrimerNodo;
}

*PrimerNodo*UltimoNodo是类型节点,是一个构造如下的结构:

struct Nodo{
long Cedula,Telefono;
Nodo *siguiente,*anterior;
char* Nombre,Apellido,Correo;

Nodo()
{
siguiente=anterior=NULL;
}

有什么办法可以解决这个错误吗?

最佳答案

如果 Lista 是指向 ListaCircular 的指针,例如:

 ListaCircular *Lista = ....

那么你的if语句应该是这样的:

 if(opcion==1 && (Lista->PrimerNodo->siguiente)==(Lista->UltimoNodo))

错误消息基本上是在告诉您,当您使用 * 取消引用 Lista 时,您返回的类型不是指针。

关于c++ - 不匹配 'operator==',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15314677/

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