C和C++的对比
C下:
#include<stdio.h>
int main()
{
printf("hello\n");
}
C++下:
#include<iostream>
using namespace std;
int main()
{
cout<<"hello"<<endl;
}
#include"iostream"//包含C++的头文件using namespace std;//使用命名空间std标准的命名空间(在这个命名空间中定义了很多标准定义)
cout标准输出,黑屏幕。
<<左移操作符,在C++里面功能的改造增强 相当于C++语言操作符的重载。
endl 相当于\n换行符
例求圆的面积:
C++:面向过程思想求解圆的面积
int main()
{
double r;
double s;
cout<<"输入圆的半径:";
cin>>r;//标准输入
cout<<"r的值是:"<<r<<endl;
s=3.14*r*r;
cout<<"圆的面积是:"<<s<<endl;
}
C++:面向对象的思想求解圆的面积
class MyCicle
{
public:
double M_r;
double M_s;
public:
void set_r(double r)
{
M_r=r;
}
double get_r()
{
return M_r;
}
double get_s()
{
M_s=3.14*M_r*M_r;
return M_s;
}
};
int main()
{
MyCicle c1;//用类定义变量 对象
double r,s;
cout<<"输入圆的半径r:";
cin>>r;//由键盘输入值
c1.set_r(r);
cout<<"圆的半径是:"<<c1.get_r()<<endl;
cout<<"圆形的面积是:"<<c1.get_s()<<endl;
}
用面向对象的方法解决:
1 类的抽象 成员变量和成员函数
2 实例化 类的对象
3 求面积
面向过程加工的是一个一个函数
面向对象加工的是一个一个类
类的调用 执行过程分析==>类代码不是一步一步指向
类是一个数据类型(固定大小内存块的别名)定义一个类是一个抽象的概念,不会给你分配内存
用数据类型定义变量的时候才会分配内存
问题:C++编译器如何处理多个对象,调用类的成员函数的???