实验3—初识类

Posted buluguy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验3—初识类相关的知识,希望对你有一定的参考价值。

 

 1 #include <iostream>
 2 using namespace std;
 3 class point
 4 {
 5     public:
 6         point();
 7         point(double x0,double y0);
 8         ~point();
 9         double getm()
10         {
11            return x*y;
12         }
13     private:
14         double x;
15         double y;
16 };
17 point::point(){}
18 point::point(double x0,double y0):x(x0),y(y0)         {cout<<"矩形面积为:  "<<endl;}
19 point::~point(){}
20 int main()
21 {
22     double jlong,jshort;
23     cout<<"请输入矩形的长和宽  "<<endl;
24     cin>>jlong>>jshort;
25     point p1(jlong,jshort);
26     cout << p1.getm() << endl;
27     return 0;
28 }

技术分享图片

不知是什么原因,对于某些数值,计算结果的精度相对于计算器总会缺少一位(四舍五入)

 1 #include <iostream>
 2 using namespace std;
 3 class Complex
 4 {
 5     public:
 6         Complex();
 7         Complex(double r0,double i0);
 8         Complex(double r0);
 9         ~Complex();
10         void add(Complex &c)// 因为c2是Complex类,所以需要用Complex定义一个参数,不过是否用引用类型无关紧要
11         {
12             real+=c.real;
13             imaginary+=c.imaginary;
14         }
15         void show()
16         {
17             cout<<real<<(imaginary>0?+:-)<<imaginary<<"i"<<endl;
18         }
19     private:
20         double real;
21         double imaginary;
22 };
23 Complex::Complex(){};//默认构造函数和析构函数在这个程序中并不是必需的(虽然编译时会自动添加缺省函数),但活用它们会起到意想不到的效果
24 Complex::Complex(double r0,double i0):real(r0),imaginary(i0){}
25 Complex::Complex(double r0):real(r0),imaginary(0){}//这里我认识到,形式不同仅仅表示不同的赋值方式,不需要因此取出变量单独赋值(实际上这也难以实现)
26 Complex::~Complex(){}
27 int main()
28 {
29     Complex c1(3,5);
30     Complex c2=4.5;
31     c2.add(c1);
32     c2.show();
33     return 0;
34 }

技术分享图片

上面两个程序的功能可以用非常简单的代码实现,但是通过实际编写可以知晓 
类中的变量是无法直接使用的,这也是类最大的作用 
这实现了实现与使用的分离,一定程度上也增强程序的安全性



以上是关于实验3—初识类的主要内容,如果未能解决你的问题,请参考以下文章

初识Spring源码 -- doResolveDependency | findAutowireCandidates | @Order@Priority调用排序 | @Autowired注入(代码片段

Java初识方法

初识openstack之3——opsenstack概念及实验环境介绍

初识OpenGL 片段着色器(Fragment Shader)

初识OpenGL 片段着色器(Fragment Shader)

201555332盛照宗—网络对抗实验1—逆向与bof基础