初识c++ 中类的使用

深入理解数据库原理
以实战为基础,以数据库原理为基础,结合实战,深入理解数据库原理。
wangxiaoming

                                          初识c++ 中类的使用

写代码写多了,不用类的话是很麻烦的, C中就没有使用类,但是C++ 中有

看代码:

#include<iostream>
using namespace std;

class Rectangle{
//这里是用文档中给出的类子开个头
     int heigth , width;
 public :
    void setValues(int , int);
    int area(){ return width*heigth;}
};
void Rectangle::setValues(int x, int y)
{

     heigth  = y;
     width = x;
}
int main()
{//声明一个对象
   Rectangle rect;
   rect.setValues(3, 4);
   cout<<"area: "<<rect.area()<<endl;
   return 0;
}


类的使用总结几点: 和数据结构类似 ,调用时要声明一个类的对象; 

                                           2、 类中可以有变量,可以有函数

下面有一种不一样的写法,之前没见过的:

The constructor for this class could be defined, as usual, as:

 
Rectangle::Rectangle (int x, int y) { width=x; height=y; }


But it could also be defined using member initialization as:

 
Rectangle::Rectangle (int x, int y) : width(x) { height=y; }


Or even:

 
Rectangle::Rectangle (int x, int y) : width(x), height(y) { }

上面的写法  Rectangle(int x, int y)  : width(x) , height(y) { }意思就是说 width = x  height = y;

下面给出一个栗子:

先看代码:

#include <iostream>
using namespace std;

class Circle {
    double radius;
  public:
    Circle(double r) : radius(r) { }
    double area() {return radius*radius*3.14159265;}
};

class Cylinder {
    Circle base;
    double height;
  public:
    Cylinder(double r, double h) : base (r), height(h) {}
    double volume() {return base.area() * height;}
};

int main () {
  Cylinder foo (10,20);

  cout << "foo's volume: " << foo.volume() << '\n';
  return 0;
}

上面的代码中就要 Circle (double r) : radius(r)   这个意思就是在Circle 中定义一个函数使得Circle(r)  r = radius 

  完成   Cylinder(double r, double h) : base(r) , height(r) 也是一样的意思 


做个熊孩子,在图书馆呆的时间越多,就赚的越多, 起码好多刀的学费的。。。。


wangxiaoming CSDN认证博客专家 架构 Spring Boot Redis
博客是很好的总结和记录工具,如果有问题,来不及回复,关注微信公众号:程序员开发者社区,获取我的联系方式,向我提问,也可以给我发送邮件,联系 1275801617@qq.com
©️2020 CSDN 皮肤主题: Age of Ai 设计师: meimeiellie 返回首页
实付0元
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值