c++使用面向过程(OPP)方法和面向对象(OOP)方法求圆形的面积

2023-10-19 05:38

本文主要是介绍c++使用面向过程(OPP)方法和面向对象(OOP)方法求圆形的面积,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

c++使用面向过程(OPP)方法和面向对象(OOP)方法求解圆形的面积

1、使用面向过程的方法求圆的面积

#include "iostream"using namespace std;
//输入圆的半径求圆的面积 s=3.14*r*r
//面向过程编程
void main()
{//声明成员标量r(半径)、s(圆的面积)double r = 0;double s = 0;//提示用户输入圆的半径rcout << "请输入圆的半径r:";//接收用户键盘输入r的值cin >> r;s = 3.14 * r * r;cout << "圆的面积为s = " << s << endl;system("pause");
}

运行结果:
运行结果
2、使用面向对象的方法求圆的面积

#include "iostream"using namespace std;class MyClass
{
public:double c_s; //圆的面积double c_r; //圆的半径public://将用户输入的圆半径r的值赋值给成员标量c_rvoid setR(double r){c_r = r;}//返回c_r的值double getR(){return c_r;}//返回圆的面积double getS() {c_s = 3.14 * c_r * c_r;return c_s;}
};//一个项目只能有一个main方法(程序入口)
void main()
{MyClass c1; //实例化对象double r;cout << "请输入c1圆的半径r:";cin >> r;//给c1圆的半径赋值c1.setR(r);//输入圆的面积cout << "圆的面积为s=" << c1.getS() << endl;system("pause");
}

运行结果
3、小结
面向过程编程:
将所有的业务需求都按流程进行编程、执行。
缺点:可重用性差、数据安全性差、不适合大型项目或图形界面应用。例如,当数据结构改变时,所有相关的处理过程都要进行相应的修改。维护成本高、团队协助效率低。
优点:有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。对于初学者容易理解。

面向对象编程:
整体分析业务需求,进行模块化编程。
缺点:性能相抵过程会稍低,对于初学者也相对来说比较难理解。
优点:代码易维护、复用和升级更新。并且可以通过面向对象的三大特性设计出优秀的项目体系结构(低耦合、高灵活的项目)。有效降低维护成本,提高开发效率等。

这篇关于c++使用面向过程(OPP)方法和面向对象(OOP)方法求圆形的面积的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/237671

相关文章

SpringBoot集成图片验证码框架easy-captcha的详细过程

《SpringBoot集成图片验证码框架easy-captcha的详细过程》本文介绍了如何将Easy-Captcha框架集成到SpringBoot项目中,实现图片验证码功能,Easy-Captcha是... 目录SpringBoot集成图片验证码框架easy-captcha一、引言二、依赖三、代码1. Ea

Springboot控制反转与Bean对象的方法

《Springboot控制反转与Bean对象的方法》文章介绍了SpringBoot中的控制反转(IoC)概念,描述了IoC容器如何管理Bean的生命周期和依赖关系,它详细讲解了Bean的注册过程,包括... 目录1 控制反转1.1 什么是控制反转1.2 SpringBoot中的控制反转2 Ioc容器对Bea

如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件

《如何使用Docker部署FTP和Nginx并通过HTTP访问FTP里的文件》本文介绍了如何使用Docker部署FTP服务器和Nginx,并通过HTTP访问FTP中的文件,通过将FTP数据目录挂载到N... 目录docker部署FTP和Nginx并通过HTTP访问FTP里的文件1. 部署 FTP 服务器 (

MySQL 日期时间格式化函数 DATE_FORMAT() 的使用示例详解

《MySQL日期时间格式化函数DATE_FORMAT()的使用示例详解》`DATE_FORMAT()`是MySQL中用于格式化日期时间的函数,本文详细介绍了其语法、格式化字符串的含义以及常见日期... 目录一、DATE_FORMAT()语法二、格式化字符串详解三、常见日期时间格式组合四、业务场景五、总结一、

Python中配置文件的全面解析与使用

《Python中配置文件的全面解析与使用》在Python开发中,配置文件扮演着举足轻重的角色,它们允许开发者在不修改代码的情况下调整应用程序的行为,下面我们就来看看常见Python配置文件格式的使用吧... 目录一、INI配置文件二、YAML配置文件三、jsON配置文件四、TOML配置文件五、XML配置文件

Go使用pprof进行CPU,内存和阻塞情况分析

《Go使用pprof进行CPU,内存和阻塞情况分析》Go语言提供了强大的pprof工具,用于分析CPU、内存、Goroutine阻塞等性能问题,帮助开发者优化程序,提高运行效率,下面我们就来深入了解下... 目录1. pprof 介绍2. 快速上手:启用 pprof3. CPU Profiling:分析 C

C++实现回文串判断的两种高效方法

《C++实现回文串判断的两种高效方法》文章介绍了两种判断回文串的方法:解法一通过创建新字符串来处理,解法二在原字符串上直接筛选判断,两种方法都使用了双指针法,文中通过代码示例讲解的非常详细,需要的朋友... 目录一、问题描述示例二、解法一:将字母数字连接到新的 string思路代码实现代码解释复杂度分析三、

MySQL InnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据

《MySQLInnoDB引擎ibdata文件损坏/删除后使用frm和ibd文件恢复数据》mysql的ibdata文件被误删、被恶意修改,没有从库和备份数据的情况下的数据恢复,不能保证数据库所有表数据... 参考:mysql Innodb表空间卸载、迁移、装载的使用方法注意!此方法只适用于innodb_fi

mysql8.0无备份通过idb文件恢复数据的方法、idb文件修复和tablespace id不一致处理

《mysql8.0无备份通过idb文件恢复数据的方法、idb文件修复和tablespaceid不一致处理》文章描述了公司服务器断电后数据库故障的过程,作者通过查看错误日志、重新初始化数据目录、恢复备... 周末突然接到一位一年多没联系的妹妹打来电话,“刘哥,快来救救我”,我脑海瞬间冒出妙瓦底,电信火苲马扁.

Python中conda虚拟环境创建及使用小结

《Python中conda虚拟环境创建及使用小结》本文主要介绍了Python中conda虚拟环境创建及使用小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们... 目录0.前言1.Miniconda安装2.conda本地基本操作3.创建conda虚拟环境4.激活c