Кажется, я не могу заставить Boolean
работать так, как мне показалось.
/////.h file
class linkD
{
private:
struct ListNode{
driver driver; ////class
ListNode *next;
};
ListNode *head;
///.cpp file
void linkD::deleteNode(driver d){
ListNode *nodePtr;
ListNode *previousNode;
ListNode *newNode;
newNode=new ListNode;
newNode->next=NULL;
newNode->driver=d;
if(!head)
return;
if(head->driver==d) //the problem is right here.
{
nodePtr=head->next;
delete head;
head=nodePtr;
}
head->driver==d
дает красную линию ( без оператора "==" соответствует этим операндам )
Я думаю, это потому, что head->driver
неинициализирован, но я могу ошибаться, и я не уверен, как его инициализировать, поскольку он находится внутри неинициализированной структуры.