类
关键字:public、private
作用范围直到下一个关键字
结构体和类的区别
没有关键字的成员
结构体默认public
类默认private
struct stu {
int grade;
float score;
};
struct stu arr1[10]; // C语⾔⾥⾯需要写成struct stu
stu arr2[10];// C++⾥⾯不⽤写struct,直接写stu就好了~
构造函数
名字与类名相同,可以有参数。
一种写法:
Person(int _age, int _height) : age(_age), height(_height) {
}
指针
int a;
int* p = &a;
引用
int a = 10;
int &p = a;
// 空指针
0
NULL
nullptr
链表
// 定义
struct Node {
int value;
Node* next;
};
int main()
{
// Node node = Node();
// Node *p = &node;
// 上面两步可以合成一步
Node* head = new Node();
Node* p = new Node();
head->next = p;
cout << head->value << endl;
cout << head->next->value << endl;
return 0;
}
当p是Node*时,使用->
当p是Node时,使用.
调用成员。
//添加一个节点(头插法)
Node* u =new Node(4);
u->next=head; //新加节点指向头节点
head=u; //更新头节点
//删除一个节点(链表的删除,不是说将这个节点干掉,而是在原链表遍历的时候,遍历不到即可!)
head->next=head->next->next;
//遍历链表
for(Node* i=head;i;i=i->next){
cout<<i->val<<endl;
}