21xrx.com
2024-11-10 00:23:12 Sunday
登录
文章检索 我的文章 写文章
C++ 结构体与类
2023-07-02 05:55:09 深夜i     --     --
C++ 结构体 面向对象 成员变量

在C++中,结构体和类是两个基本的数据结构类型,它们都可以包含多个数据成员,但是它们在用途上是有所不同的。

结构体通常用于表示一个数据集合,例如表示一个点或者向量,结构体的每个数据成员都是公开(public)的,可以直接访问。定义结构体时使用struct关键字,例如:


struct Point

  double x;

  double y;

;

在使用时可以直接访问结构体的成员,例如:


Point p;

p.x = 1.0;

p.y = 2.0;

而类则是一种封装数据和行为的方式,它包含了数据成员和成员函数。类的数据成员通常是私有(private)的,外部无法直接访问,需要通过成员函数来访问或者修改。定义类时使用class关键字,例如:


class Rectangle {

public:

  Rectangle(double w, double h)

    width = w;

    height = h;

  

  double getArea() {

    return width * height;

  }

private:

  double width;

  double height;

};

在使用时,可以像使用结构体一样创建类的对象,例如:


Rectangle r(2.0, 3.0);

double area = r.getArea();

从上面的例子可以看出,类相比于结构体多了成员函数的概念,这使得类更加灵活和功能强大,可以更好地组织数据和实现抽象。但是,如果只是简单地存储数据,使用结构体也是很方便的。

在C++中,结构体和类可以互相转换。结构体可以定义成员函数,类也可以定义公开的数据成员。结构体和类的主要区别在于默认的访问控制(public或者private),以及默认的继承访问控制(public或者private)。

总之,结构体和类是C++中基本的数据结构类型,它们在用途上有所不同,但是都可以用来表示多个数据成员。选择合适的数据类型可以让代码更加清晰和易于维护。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复