c++实例化对象:
- 类名 变量 = 类名()
- 如果是new方式,那么是类名* 指针名 = new 类名()
#include<bits/stdc++.h>
using namespace std;
struct ListNode {
int val;
ListNode *next;
ListNode() : val(0), next(nullptr) {}
ListNode(int x) : val(x), next(nullptr) {}
ListNode(int x, ListNode *next) : val(x), next(next) {}
};
int main() {
// 节点创建
ListNode *node1 = new ListNode;
ListNode *node2 = new ListNode(); // 初始化值为0
ListNode *node3 = new ListNode(100); // 初始化值为100
// 插入节点
node1->next = node2;
// 沿伸:循环建立链表,链表是多个节点串联起来的
ListNode *head = new ListNode(); //头节点
// 循环前最好设置一个哑节点
ListNode *p=head; //指针
int i=1;
while(i<5) {
ListNode *node = new ListNode(i); // 初始化一个节点
p->next = node;
p=p->next;
i++;
}
p->next=NULL;//最后一个节点的指针指向空
// 遍历链表
p=head;
while(p) {
cout<<p->val;
p=p->next;
}
// 删除节点
ListNode *pre = p->next;
p->next=p->next->next;
delete pre;
// nullptr 代表NULL, NULL代表0
pre = nullptr
}