面向对象:封装性+继承性+多态性
C语言中,结构体不能包含函数,而C++可以
对象具有状态(属性)和行为(方法)
#include<iostream.h>
void main(){
int a;
cin>>a;
cout<<a<<endl;//endl(end of line),在输出流中插入一个换行('\n'),并刷新输出缓冲区
}
定义结构体
struct Point{
int x;
int y;
void output(){
cout<<x<<endl<<y<<endl;
}
};
class Point{
private:
int x;
int y;
public:
Point(){
x=0;
y=0;
}
Point(int x,int y=0){
this->x=x;//this指针
this->y=y;
}
void output(){
cout<<x<<endl<<y<<endl;
}
};
void main(){
Point p(5,6);
p.output();
}
class Student{
private:
char *pName;
public:
Student(){
pName=new char[20];
}
~Student(){
delete[]pName;
}
};
在类中定义成员变量时,不能直接给成员变量赋值
析构函数不允许带参,一个类中只有一个析构函数
结构体成员默认公有,而类成员默认私有
函数重载:函数的参数类型/参数个数
C语言中,结构体不能包含函数,而C++可以
对象具有状态(属性)和行为(方法)
#include<iostream.h>
void main(){
int a;
cin>>a;
cout<<a<<endl;//endl(end of line),在输出流中插入一个换行('\n'),并刷新输出缓冲区
}
定义结构体
struct Point{
int x;
int y;
void output(){
cout<<x<<endl<<y<<endl;
}
};
class Point{
private:
int x;
int y;
public:
Point(){
x=0;
y=0;
}
Point(int x,int y=0){
this->x=x;//this指针
this->y=y;
}
void output(){
cout<<x<<endl<<y<<endl;
}
};
void main(){
Point p(5,6);
p.output();
}
class Student{
private:
char *pName;
public:
Student(){
pName=new char[20];
}
~Student(){
delete[]pName;
}
};
在类中定义成员变量时,不能直接给成员变量赋值
析构函数不允许带参,一个类中只有一个析构函数
结构体成员默认公有,而类成员默认私有
函数重载:函数的参数类型/参数个数