21xrx.com
2024-12-22 21:08:29 Sunday
登录
文章检索 我的文章 写文章
C++中的类和结构体
2023-07-12 18:24:50 深夜i     --     --
C++类 C++结构体 面向对象编程 数据封装 成员函数

C++是一种面向对象的编程语言,其中类和结构体是其核心概念之一。类和结构体都是用户自定义的数据类型,它们可以包含一组变量,称为成员变量,还可以包含一组函数,称为成员函数。

类和结构体有很多相似之处,但也有一些不同。关键的区别在于默认的访问权限和继承方式。在类中,默认的成员变量和成员函数访问权限是私有的,而在结构体中默认是公有的。此外,在类中可以使用继承来派生新类,而在结构体中则不支持继承。

下面是一个简单的类的定义:


class Person {

public:

  void setName(std::string name)

    m_name = name;

  

  

  std::string getName() const

    return m_name;

  

  

private:

  std::string m_name;

};

这个类有一个名为“Person”的标识符,它包含一个私有的成员变量“m_name”,以及两个公有的成员函数“setName”和“getName”。成员函数可以访问成员变量,但外部代码不能直接访问私有成员变量。

类的对象可以通过以下方式声明和初始化:


Person p;

p.setName("John Smith");

std::string name = p.getName();

在上面的例子中,我们声明了一个名为“p”的Person对象,并调用了它的“setName”函数来设置姓名。然后通过“getName”函数获取了这个人的姓名。

结构体的定义和使用方式与类类似,只是访问权限的默认设置和继承方式不同。下面是一个简单的结构体的定义:


struct Point

  int x;

  int y;

;

这个结构体有一个名为“Point”的标识符,它包含两个公有的成员变量“x”和“y”。结构体的对象可以通过以下方式初始化:


Point p = 2;

int x = p.x;

int y = p.y;

在上面的例子中,我们声明了一个名为“p”的Point对象,并使用大括号初始化了它的“x”和“y”成员变量。然后通过点运算符获取了这个点的坐标。

总之,类和结构体都是C++中非常重要的概念,它们都可以用于封装数据和实现功能。开发者可以根据需求选择使用哪种形式的数据类型,从而更好地构建自己的程序。

  
  

评论区

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