为了账号安全,请及时绑定邮箱和手机立即绑定

最新回答 / kinpowoo
老师是这么说的,比如你要在主文件的函数中调用插入节点的函数,在主文件的函数中声明一个Node node对象,一般在函数中申请变量都是在栈中申请,不会在堆中,在栈中申请的对象在函数执行完成后就销毁了,可以节约内存资源。这时你把这个node对象的地址传入插入节点的函数中,插入节点函数只需要拿到这个node对象中的值,然后自己去堆中申请内存。  如果你直接引用传进来的node对象,这个对象在外面函数执行完成后被系统销毁了,刚插入的值不复存在,就会引发错误,

已采纳回答 / 慕姐5052964
头结点前不能插入,因为它data为空,没有意义吧。头结点后面的第一个数据算0号数据,listinserthead函数是插在头结点后面的,遍历出来结果显示它的数据在第一个位置上。头结点data为空,但是指针不为null,它前面不能插入数据。最后一个结点data不为空,指针为null,它的前后都可以插入数据。get函数中不算头结点,i最小为0,这就是头结点后面的第一个数据,即0号数据,头结点data为空,或者说没有意义,所以不能get 出来。

已采纳回答 / 十二楼中月自明
其实已经删除了尾节点,currentNode->next != NULL 是没有删除尾节点的,而currentNode != NULL表示这个节点为空,即已经删除了

最新回答 / chuikokching
Java的话思路大体相同,就形式变了下.....  定义一个方法类和节点类。节点就是节点类的一个对象,然后节点指向的那些就用Setnext()或者Getnext()来完成....

已采纳回答 / MrJean
Lish.h 头文件里面放声明 ,具体的定义放在 List.cpp 里面。 List.cpp包含 List.h头文件

最赞回答 / vortesnail
node1是Node类型,Node类里面定义了Peoson data这个数据成员,首先,node1.data是一个Person对象,通过node1.data.name就调用了这个对象(Person对象)中的数据成员name。

已采纳回答 / 奋进的努力的蜗牛
当前指针指向下一个节点,要记录当前指针,一边插入、删除操作,

已采纳回答 / 黑巫师0
头结点只是一个牵头的作用,可以通过头结点来顺藤摸瓜找到链表中的所有元素,但本身并没存储有意义数据,所以作为前驱也就没有什么意义,因此不用头结点作前驱。希望能帮到你~

已采纳回答 / 风起了_
m_pList是一个Node*对象,这是对的。next只是一个数据成员,next只是一个指向Node类型的指针,指向下一个结点“在构造函数里面已经m_pList->next = NULL”这是初始化的时候,并没有插入任何元素,当然应该置为空。插入元素之后,就不会再为空了。

已采纳回答 / 黑巫师0
delete m_pList;   这个操作只是将指针m_pList所指向的内存空间释放掉,使内存重归操作系统。但m_pList的指向位置并没有改变,此位置的内存已经被释放掉了,若再用m_pList访问这块内存,系统就会崩溃出错!为了防止这种误操作所引起的崩溃出错。所以将m_pList置为NULL的安全状态,就避免这种野指针事件的发生。希望对你有所帮助~
课程须知
"本课程是数据结构初级课程 1、熟练掌握C++语言基础语法"
老师告诉你能学到什么?
1、顺序表的工作原理 2、顺序表的实现方法及编码技巧 3、链表的工作原理 4、链表的实现方法及编码技巧 5、通讯录的实现原理及编码技巧

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消