类(class)
类可以将变量数组完美的打包在一起。
在工程项目中效果比较好 。
注意类的后面一定要加分号,不然会报错
类中的变量和函数统一称为成员变量。
关键字
private: 后为私有成员变量在类外部不能访问。
public: 后面的内容是公有成员变量,在类的外部可以访问。
#include<iostream>
#include<string>
using namespace std;
class person
{
private:
int age,height;
double money;
string books[100];
public:
string name;
void say()
{
cout<<"I'm"<<name<<endl;
}
int get_age()
{
return age;
}
void add_money(double x)
{
money+=x;
}
};
int main()
{
person c;
c.name="jiaozixi";
c.add_money(100000000);
}
结构体
后面也要加分号
构造函数:没有类型的,名字一定和结构体名字是一样的,可以添加参数
#include<iostream>
using namespace std;
struct person
{
int age,height;
double money;
person(int _age,int _height,double _money) //构造函数
{
age=_age;
height=_height;
money=_money;
}
};
int main()
{
person p1(18,180,100.0);
return 0;
}
指针和引用
指针
(1)针指向存放变量的值的地址。因此我们可以通过指针来修改变量的值。
(2)数组名是一种特殊的指针。指针可以做运算
#include<iostream>
using namespace std;
int main()
{
int a[5]={1,2,3,4,5};
int *p=a;
cout<<*p<<endl;
return 0;
}输出为1;
如果想要通过*p访问下一个值,只需要*(p+1)就可以,值得注意的是p+1不是下一个地址,而是下一个同类型(假设初地址为0x00,那p+1是0x04,不是0x01。
除此之外*(P+1)和*(a+1)的作用是相同的。因为数组本身就是一个指针。
链表
一些c语言数据结构学过的东西,没什么特别的
c++的内存分配用的是new