21xrx.com
2024-11-05 17:28:13 Tuesday
登录
文章检索 我的文章 写文章
如何在C++中使用class函数?
2023-06-28 01:54:28 深夜i     --     --
C++ class 函数 使用

C++中的class是一种定义自定义数据类型的方法,它可以让我们将数据和函数封装在一起形成一个独立的对象。通过使用class,我们可以更加简洁地实现程序代码并且提高程序的可读性和可维护性。下面我们就来介绍一些如何在C++中使用class函数的方法。

首先,在C++中定义class的语法为:class 类名{},其中花括号中可以写入类的成员和成员函数。例如:


class Cat{

 private:

  int age;

  std::string name;

 public:

  void setAge(int a)

   age = a;

  

  void setName(std::string n)

   name = n;

  

  void display(){

   std::cout << "This cat's name is " << name << " , and it's " << age << " years old.\n";

  }

};

上述定义了一个Cat类,并且定义了三个成员函数:setAge、setName和display;两个私有成员变量age和name。注意:在类的成员函数内部,使用类的成员变量时需要使用this指针来访问。

接着,我们可以在程序中实例化一个Cat对象:


Cat tom;

tom.setName("Tom");

tom.setAge(2);

tom.display();

这样就可以输出结果:"This cat's name is Tom, and it's 2 years old."。注意:在使用类的成员函数时,需要使用点运算符"."来调用。

除了上述方法外,我们还可以使用构造函数和析构函数。

构造函数用于对象的初始化,例如:


class Cat{

 private:

  int age;

  std::string name;

 public:

  Cat(int a, std::string n)

   age = a;

   name = n;

  

  void display(){

   std::cout << "This cat's name is " << name << " , and it's " << age << " years old.\n";

  }

};

然后我们可以在程序中这样使用:


Cat tom(2, "Tom");

tom.display();

这样也可以输出结果:"This cat's name is Tom, and it's 2 years old."。需要注意的是,如果没有定义构造函数,系统会默认定义一个无参的构造函数用于对象的创建。

析构函数用于对象的销毁,在对象生命周期结束时调用,例如:


class Cat{

 private:

  int age;

  std::string name;

 public:

  Cat(int a, std::string n){

   age = a;

   name = n;

   std::cout << "A cat named " << name << " is borned.\n";

  }

  ~Cat(){

   std::cout << "A cat named " << name << " is dead.\n";

  }

  void display(){

   std::cout << "This cat's name is " << name << " , and it's " << age << " years old.\n";

  }

};

当我们在程序中创建一个Cat对象并在程序结束时销毁它时,析构函数就会被调用:


int main(){

 Cat tom(2, "Tom");

 tom.display();

 return 0;

}

输出结果为:"A cat named Tom is borned."和"A cat named Tom is dead."。需要注意的是,如果没有定义析构函数,系统会默认定义一个空析构函数,不做任何操作。

综上,我们可以通过使用class来定义自定义数据类型,实现类的成员和成员函数,并可以通过对象实例化来进行使用。同时还可以通过构造函数和析构函数来进行对象的初始化和销毁。需要注意的是,class定义的成员默认为私有成员,需要通过public关键字将成员函数暴露出来供外界使用。

  
  

评论区

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