#include “iostream”//包含C++的头文件。输入输出流
using namespace std; //使用命名空间 std 标准的命名空间(在这个命名空间中定义了很多标准定义)
void main()
//cout 标准输出 黑屏幕
//<< 左移操作符 在C++里面 功能的改造(增强)===>C++ 语言操作符重载
//endl \n
//打印到屏幕 并且换行
cout << “hello world …”<<endl;
system(“pause”);
C是面向过程的语言,C++是面向对象的语言
下面分别用面向过程思想(C)和面向对象的方法(C++)求一个圆的面积。
面向过程加工的是一个一个的函数,面向对象加工的是一个一个的类。
数据处理:
输入半径 r;
计算周长 = 2*π*r
计算面积 = π*r*r
输出半径,周长,面积;
#include "iostream"
using namespace std;
//面向过程的方法
int main(void)
double r = 0;
double s = 0;
cout << "请输入圆形的半径:";
//cin 标准输入 代表键盘
cin >> r;
cout << "r的值是:" << r << endl;
s = 3.14*r*r;
cout << "圆形的面积是s:" << s << endl;
system("pause");
面向对象的方法:
//用面向对象的方法
//1 类的抽象 成员变量和成员函数
//2 实例化 类的对象
//3 求面积
//面向过程加工的是一个一个的函数
//面向对象加工的是一个一个的类。
//4 main 集成测试
//思考:类的调用 执行过程分析==>类代码不是一步一步执行的
//类是一个数据类型,(固定大小内存块的别名);
//定义一个类,是一个抽象的概念,不会给你分配内存
//用数据类型定义变量的时候,才会分配内存
对象其实就是用类定义的变量
#include "iostream"
using namespace std;
//在C++中 定义了一个自定义数据类型
struct Circle
{
double m_s; //圆的面积
double m_r; //圆的半径
}
//类的抽象 成员变量 成员函数
class MyCicle
public:
double m_s; //圆的面积 属性 成员变量
double m_r; //圆的半径
public:
void SetR(double r) //成员函数
m_r = r;
double getR() //成员函数
return m_r;
double getS()
m_s = 3.14*m_r*m_r;
return m_s;
//用面向对象的方法
//1 类的抽象 成员变量和成员函数
//2 实例化 类的对象
//3 求面积
//面向过程加工的是一个一个的函数
//面向对象加工的是一个一个的类。
//4 main 集成测试
//思考:类的调用 执行过程分析==>类代码不是一步一步执行的
//类是一个数据类型,(固定大小内存块的别名);
//定义一个类,是一个抽象的概念,不会给你分配内存
//用数据类型定义变量的时候,才会分配内存
void main02(void)
MyCicle c1; //用类 定义 变量 --- 对象
double r;
cout << "请输入c1圆形的半径:";
cin >> r;
//给c1圆形的属性赋值
c1.SetR(r);
cout << "c1圆形的面积是:" << c1.getS()<<endl;
system("pause");
void main(void)
MyCicle c1, c2; //用类 定义 变量 --- 对象
double r1, r2;
//圆形1
cout << "请输入c1圆形的半径r1:";
cin >> r1;
//给c1圆形的属性赋值
c1.SetR(r1);
cout << "c1圆形的面积是:" << c1.getS()<<endl;
//圆形2
cout << "请输入c2圆形的半径r2:";
cin >> r2;
//给c2圆形的属性赋值
c2.SetR(r2);
cout << "c2圆形的面积是:" << c2.getS()<<endl;
system("pause");
从内存四区的角度看上面的代码为:
首先通过类型circle 定义变量double r;double pi;double area;C++编译器会分配内存;
r没有值,是个乱码,pi = 3.14,area = pi * r * r = pi*乱码*乱码
然后输入r的值,并把r赋值为相应的值,假如是10;
最后执行cout<<c1.area<<endl; 打印area的值。但是,C++编译器不会主动去调用area = pi * r * r ;
只是直接从变量所表示的内存空间中拿值,并没有执行 pi * r * r,所以是一个随机值。
所以要想执行area = pi * r * r ;必须写一个成员函数。
#include <iostream>
using namespace std; //C++的命名空间
class circle
public:
double r;
double pi = 3.14;
double area = pi*r*r;
double gets()
area = pi*r*r;
return area;
int main(void)
circle pi;
cout <<"请输入area"<<endl;
cin >> pi.r;
cout << pi.gets() <<endl; //执行函数调用,就执行了pi*r*r
system("pause");
作者:Liu_Jing
bilibili视频教程地址:https://space.bilibili.com/5782182
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在转载文章页面给出原文连接。
如果你觉得文章对你有所帮助,烦请点个推荐,你的支持是我更文的动力。
文中若有错误,请您务必指出,感谢给予我建议并让我提高的你。