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 成员变量 对于特定类型的全体对象而言,有时候可能需要访问一个全局的变量.比如说统计某种类型对象已创建的数量. 如果我们用全局变量会破坏数据的封装,一般的用户代码都可以修改这个全局变量 ...
随机推荐
- .Net Core with 微服务 - Consul 配置中心
上一次我们介绍了Elastic APM组件.这一次我们继续介绍微服务相关组件配置中心的使用方法.本来打算介绍下携程开源的重型配置中心框架 apollo 但是体系实在是太过于庞大,还是让我爱不起来.因为 ...
- Python—IP地址与整数之间的转换
1. 将整数转换成IP: 思路:将整数转换成无符号32位的二进制,再8位进行分割,每8位转换成十进制即可. 方法一:#!usr/bin/python 2 #encoding=utf-8 3 #1. 将 ...
- Elasticsearch-02-入门:集群、节点、分片、索引及常用API
2. 基础入门 2.1 重要概念 2.1.1 集群和节点 1)cluster Elasticsearch集群是由一个或多个节点组成,通过其集群名称来进行唯一标识.节点在搜索到集群之后,通过判断自身的 ...
- ESP32构建系统(CMake版)
ESP32 芯片是一款 2.4 GHz Wi-Fi 和蓝牙双模芯片,内置 1 或 2 个 32 位处理器,运算能力最高可达 600 DMIPS. ESP-IDF 即乐鑫物联网开发框架,可为在 Wind ...
- F5负载均衡_monitors(健康检查)
故障现象: 后端有5台服务器,每个服务器上跑着8个应用.使用F5做应用负载调度.这40个应用里面,3-10个应用在高峰期的时候weblogic的DOS窗口显示与数据库断开连接(端口通.业务断),但是F ...
- Python----MongoDB数据库
什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统. 在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB 旨在为WEB应用提供 ...
- spring中如何向一个单例bean中注入非单例bean
看到这个题目相信很多小伙伴都是懵懵的,平时我们的做法大都是下面的操作 @Component public class People{ @Autowired private Man man; } 这里如 ...
- 以太网MAC地址组成与交换机基本知识
以太网MAC地址 MAC地址由48位二进制组成,通常分为六段,用十六进制表示,工作在数据链路层. 数据链路层功能: 链路的建立,维护与拆除 帧包装,帧传输,帧同步 帧的差错恢复 简单的流量控制 第八位 ...
- C语言:文本文件和二进制文件
学习了 fopen() 函数后,我们知道它的第二个参数是一个字符串,用来表示文件打开方式.如果字符串中出现b,则表示以二进制方式打开文件:如果字符串中出现t,或者两者都不出现,则表示以文本方式打开文件 ...
- LeetCode 887. Super Egg Drop
题目链接:https://leetcode.com/problems/super-egg-drop/ 题意:给你K个鸡蛋以及一栋N层楼的建筑,已知存在某一个楼层F(0<=F<=N),在不高 ...