C++ 1//设计立方体类 //创建立方体的类 //设计属性和行为 //获取立方体的面积和体积 //分别利用(全局函数 和 成员函数)判断俩个立方体是否相等
1 //设计立方体类
2 //创建立方体的类
3 //设计属性和行为
4 //获取立方体的面积和体积
5 //分别利用(全局函数 和 成员函数)判断俩个立方体是否相等
6 #include <iostream>
7 #include<string>
8 using namespace std;
9
10
11 class Cube
12 {
13
14 public:
15
16 //设置长
17 void setL(int l)
18 {
19 m_L = l;
20 }
21
22 //获取宽
23 int getL()
24 {
25 return m_L;
26 }
27
28 //设置宽
29 void setW(int w)
30 {
31 m_W = w;
32 }
33
34 //获取宽
35 int getW()
36 {
37 return m_W;
38 }
39
40 //设置高
41 void setH(int h)
42 {
43 m_H = h;
44 }
45
46 //获取高
47
48 int getH()
49 {
50 return m_H;
51 }
52
53 //获取立方体面积
54 int calulateS()
55 {
56 return 2 * m_L * m_W + 2 * m_W * m_H + 2 * m_L * m_H;
57 }
58 //获取体积
59 int calulateV()
60 {
61 return m_L * m_W * m_H;
62 }
63
64
65 //利用成员函数判断
66 bool isSameByClass(Cube &c)
67 {
68 if (m_L == c.getL() && m_W == c.getW() && m_H == c.getH())
69 {
70 return true;
71 }
72 return false;
73 }
74
75 private:
76
77
78 int m_L; //长
79 int m_W; //宽
80 int m_H; //高
81 };
82
83 //利用全局函数判断
84 bool isSame(Cube &c1, Cube &c2)
85 {
86 if (c1.getL() == c2.getL() && c1.getW() == c2.getW() && c1.getH() == c2.getH())
87 {
88 return true;
89 }
90 else
91 {
92 return false;
93
94 }
95
96
97
98 }
99
100
101
102 int main()
103 {
104 //创建立方体对象
105
106 Cube c1;
107 c1.setL(10);
108 c1.setW(10);
109 c1.setH(10);
110
111
112 cout << "C1的面积为: " << c1.calulateS() << endl;
113 cout << "C1的体积为: " << c1.calulateV() << endl;
114
115
116 //第二个
117 Cube c2;
118 c2.setL(10);
119 c2.setW(10);
120 c2.setH(12);
121
122 cout << "C2的面积为: " << c2.calulateS() << endl;
123 cout << "C2的体积为: " << c2.calulateV() << endl;
124
125
126 bool ret = isSame(c1, c2);
127 if (ret)
128 {
129 cout << "c1和c2是相等的" << endl;
130 }
131 else
132 {
133 cout << "c1和c2是不相等" << endl;
134 }
135
136 //利用成员函数判断
137 ret = c1.isSameByClass(c2);
138 if (ret)
139 {
140 cout << "成员函数c1和c2是相等的" << endl;
141 }
142 else
143 {
144 cout << "成员函数c1和c2是不相等" << endl;
145 }
146
147 }

C++ 1//设计立方体类 //创建立方体的类 //设计属性和行为 //获取立方体的面积和体积 //分别利用(全局函数 和 成员函数)判断俩个立方体是否相等的更多相关文章
- 通过元类创建一个Python类
通过元类创建一个Python类 最开始学pytohn的时候我们这样定义类 class ClassName: pass 当熟悉了元类的概念之后我们还可以这样创建 ClassName = type(&qu ...
- c++-变量,this指针,全局函数,成员函数,自定义数组类
区分变量属于哪个对象 c++对象管理模型初探 C++类对象中的成员变量和成员函数是分开存储的,C中内存四区仍然有效 C++编译器对普通成员函数的内部处理(隐藏this指针) this指针解决函数形参和 ...
- 潭州课堂25班:Ph201805201 django框架 第五课 自定义简单标签,包含标签,模型类创建,梳理类创建 (课堂笔记)
自定义标签同自定义过渡器一样,要创建文件,在配置文件中以APP方法注册,对方法进注册,在 html 文件中引入,.. 由模板传参 在 在配置文件中改时区: 由视图函数传参 包含标签: 当有这种重复的代 ...
- 第四百一十三节,python面向对象,组合、类创建的本质、依赖注入
组合 组合举例组合就是多个类,或者若干类联合起来完成一个任务下面举例两个类联合起来完成一个任务为了降低代码的耦合度,我们一般不会在一个类里实例化另外一个类,都是将一个类在外面实例化后传参到另外一个来这 ...
- 深入理解类成员函数的调用规则(理解成员函数的内存为什么不会反映在sizeof运算符上、类的静态绑定与动态绑定、虚函数表)
本文转载自:http://blog.51cto.com/9291927/2148695 总结: 一.成员函数的内存为什么不会反映在sizeof运算符上? 成员函数可以被看作是类 ...
- [转]深刻理解Python中的元类(metaclass)以及元类实现单例模式
使用元类 深刻理解Python中的元类(metaclass)以及元类实现单例模式 在看一些框架源代码的过程中碰到很多元类的实例,看起来很吃力很晦涩:在看python cookbook中关于元类创建单例 ...
- 深刻理解Python中的元类(metaclass)以及元类实现单例模式
在理解元类之前,你需要先掌握Python中的类.Python中类的概念借鉴于Smalltalk,这显得有些奇特.在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段.在Python中这一点仍 ...
- C++ 类 & 对象-类成员函数-类访问修饰符-C++ 友元函数-构造函数 & 析构函数-C++ 拷贝构造函数
C++ 类成员函数 成员函数可以定义在类定义内部,或者单独使用范围解析运算符 :: 来定义. 需要强调一点,在 :: 运算符之前必须使用类名.调用成员函数是在对象上使用点运算符(.),这样它就能操作与 ...
- static 成员变量、static 成员函数、类/对象的大小
一.static 成员变量 对于特定类型的全体对象而言,有时候可能需要访问一个全局的变量.比如说统计某种类型对象已创建的数量. 如果我们用全局变量会破坏数据的封装,一般的用户代码都可以修改这个全局变量 ...
随机推荐
- Maven项目无法下载JAR包,输入mvn help:system出现No plugin found for prefix 'help' in the current project and in the plugin groups的解决方案
这个问题困扰了我很久,一直无法解决:我在虚拟机里面按照同样的步骤配置了三次maven项目,每次都能成功:可一旦到外面maven项目总是创建失败,输入mvn help:system总是出现No plug ...
- 从 Vue parseHTML 来学习正则表达式
从 Vue parseHTML 所用正则来学习常用正则语法 Vue parseHTML 中所用的所有正则如下.常见正则规则可参见附录 1,Vue parseHTML 正则所用规则均可在其中找到定义. ...
- 第15章: Prometheus监控Kubernetes资源与应用
Prometheus监控Kubernetes资源与应用 目录 1 监控方案 2 2 监控指标 4 3 实现思路 4 4 在K8S中部署Prometheus 4 5 在K8S中部署Grafana与可视化 ...
- webrtc之TURE、STUN、摄像头打开实战
前言: 大家周末好,今天给 webrtc之TURE.STUN.摄像头打开实战 大家分享的是webrtc第一篇文章,在之前的音视频文章里面没有分享过关于webrtc的内容:在上个周末分享了一篇关于播放器 ...
- Linux系统inodes资源耗尽时的查找及删除
for i in {1..10}; do echo $i; ls > $i.log; done for i in $(seq 1 10); do echo $i; done 以上为for循环的使 ...
- HCNA Routing&Switching之动态路由基本概念
前文我们了解了静态路由的相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14965433.html:今天我们来聊一聊动态路由相关概念: 首先我们要清楚什 ...
- 关于SOA和AOP
SOA:面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来.C/S端框架有WPF,服务端应用程序有WCF.asp.net web ...
- SQLITE数据库不支持远程访问
SQLITE数据库不支持远程访问 import sqlite3 conn=sqlite3.connect("dailiaq.db") cur=conn.cursor() def c ...
- RPC远程协议之Thrift入门
在上一篇文章<RPC远程协议之原理分析>中,我介绍了RPC的工作原理及欲实现RPC框架功能应该做哪些事情,因为要做的事情太多,完全由开发人员研发实现,不是很现实,所以市面上出现了诸多RPC ...
- 开源桌面快速启动工具-GeekDesk
GeekDesk 小巧.美观的桌面快速启动工具 开发框架 wpf .net 4.7.2 HandyControl 全局热键 鼠标跟随 快速启动 随时随地 支持自定义热键 支持鼠标跟随 自定义壁纸 随意 ...