C++中链表问题
我首先尝试创建一个节点,但我不确定它是否正确。很抱歉,我对C++是新的。我不知道如何让我的节点p指向链表的第一个元素。希望能提供帮助。谢谢 以下是我的功能:C++中链表问题,c++,linked-list,C++,Linked List,我首先尝试创建一个节点,但我不确定它是否正确。很抱歉,我对C++是新的。我不知道如何让我的节点p指向链表的第一个元素。希望能提供帮助。谢谢 以下是我的功能: template<class Type> void longestSequence(linkedListType<Type>& list, int& maxCount, Type& value) { nodeType<Type> *p = first; int co
template<class Type>
void longestSequence(linkedListType<Type>& list, int& maxCount, Type& value)
{
nodeType<Type> *p = first;
int count = 0;
int tempValue = 0;
while(p != NULL)
{
if(p->info == p->link->info)
{
count++;
tempValue = p->info;
}
p = p->link;
}
if(count > maxCount)
{
maxCount = count;
value = tempValue;
}
else if(count == maxCount && tempValue < value)
{
value = tempValue;
}
}
你的类linkedListType应该有一个成员nodeType*头。
创建链表的第一个节点时,应将其地址指定给head
然后,您可以随时访问链接列表的第一个节点。
例如,nodeType*p=list.head您需要检查p和p->info是否都不为空,而且,您可能应该检查这些值是否与值匹配?首先感谢您的建议。我会设法修改守则。然而,编译器不断显示出错误,“第一”不是一个声明的标识符,我不知道如何解决ITI,抱歉我是C++新手,这是没有理由道歉的。继续学习吧首先谢谢你的回答。首先有一个受保护的节点类型*。但是当我试图通过键入nodeType*p=list.first来访问它时,编译器说我无法访问受保护的变量您有两个选项:1。公开该成员。然后你可以访问它。2.将成员设为私有并定义一个getter函数来访问它。很抱歉,我只能处理此特定函数,而不能添加新成员函数或更改头文件。如果无法更改访问说明符,则无法访问变量。可以从派生类访问受保护的成员。您必须创建一个派生类,并使您的函数成为派生类的成员。为什么不能更改头文件?