当前位置: 首页 > 编程笔记 >

C++类基本语法实例分析

赵刚豪
2023-03-14
本文向大家介绍C++类基本语法实例分析,包括了C++类基本语法实例分析的使用技巧和注意事项,需要的朋友参考一下

类是C++程序设计非常重要的概念,本文即以实例形式说明了类的常见用法。具体如下:

本测试代码主要包括以下内容:

(1)如何使用构造函数;
(2)默认构造函数;
(3)对象间赋值;
(4)const使用语法;
(5)定义类常量: 一种方法是用enum,另一种方法是使用static。

实例代码如下:

#include <iostream>

using namespace std;

enum sexType
{
  MAN,
  WOMAN
};

class Human
{
  //the default is private
  private:
    string name;
    sexType sex;
    int age;

    //(5) 定义类常量: 一种方法是用enum,另一种方法是使用static
    enum{LEN=1};
    static const int LEN2 = 3;

  public:
    //如果类定义中没有提供任何构造函数,则编译器提供默认构造函数。但,如果类中定义了构造函数,那么编写者必须同时提供一个默认构造函数。
    //有两种方法提供默认构造函数:
    //(1) 定义一个没有参数的构造函数:Human();
    //(2) 为非默认构造函数的参数提供默认值: Human(string m_name="no name", int m_age=0, sexType m_sex=MAN);
    //两种定义方式只能二选一
    Human();
    Human(string m_name, int m_age, sexType m_sex);
    Human(int m_age);
    ~Human();

    //定义在类声明中的方法为内联方法。也可以使用inline关键字将函数定义在类声明外部。
    void show() const //const加在函数名后面表示该函数不会修改该类的数据成员。
    {
      cout<<"This is "<<name<<", sex: "<<sex<<", "<<age<<" Years old."<<endl;
    }
};

Human::Human()
{
  cout<<"default construct function"<<endl;
}

Human::Human(string m_name, int m_age, sexType m_sex)
{
  cout<<"construct function: "<<m_name<<endl;
  name = m_name;
  age = m_age;
  sex = m_sex;
}

Human::Human(int m_age)
{
  age = m_age;
}

Human::~Human()
{
  cout<<"destroy function: "<<name<<endl;
}

int main()
{
  cout << "This is test code of C++ class: "<< endl;
  {
    //(1) use of construct function
    Human jack = Human("Jack", 30, MAN); //显示调用
    Human jerry("Jerry", 26, MAN);    //隐式调用
    Human *pTom = new Human("Tom", 10, MAN); //New调用
    //当构造函数只有一个参数时,可以直接用赋值语句赋值。只有一个参数的构造函数将会被自动调用
    Human marry = 11; //赋值调用

    //(2) defaults construct function
    Human Lucy;

    //(3) 赋值对象
    Human James;
    James = Human("James", 28, MAN); //创建一个临时对象James,copy一份儿该对象赋值给James变量。紧接着该临时对象会被销毁。

    //(4) const
    const Human Thomas("Thomas", 29, MAN);
    Thomas.show(); //The show method must define with 'const'
  }
  return 0;
}

程序运行结果为:

 类似资料:
  • 主要内容:using关键字,class关键字,C#中的注释,成员变量,成员函数,类的实例化,标识符C# 是一种面向对象的编程语言。在面向对象语言编程中,程序由各种对象组成,对象之间可以通过方法进行交互。相同种类的对象通常具有相同的类型,或者说相同种类的对象都在相同的 class 中。 例如,我们创建了一个 Rectangle 对象,用它来表示长方形,Rectangle 对象中具有 length(长)和 width(宽)两个属性。如果我们要计算长方形面积的话,则可以使用一个方法来接收 lengt

  • 当我们考虑一个C ++程序时,它可以被定义为通过调用彼此的方法进行通信的对象集合。 现在让我们简要地看一下类,对象,方法和即时变量的含义。 Object - 对象具有状态和行为。 示例:狗有状态 - 颜色,名称,品种以及行为 - 摇摆,吠叫,吃东西。 对象是类的实例。 Class - 可以将类定义为描述其类型对象支持的行为/状态的模板/蓝图。 Methods - 方法基本上是一种行为。 一个类可以

  • C++ 程序可以定义为对象的集合,这些对象通过调用彼此的方法进行交互。现在让我们简要地看一下什么是类、对象,方法、即时变量。 对象 - 对象具有状态和行为。例如:一只狗的状态 - 颜色、名称、品种,行为 - 摇动、叫唤、吃。对象是类的实例。 类 - 类可以定义为描述对象行为/状态的模板/蓝图。 方法 - 从基本上说,一个方法表示一种行为。一个类可以包含多个方法。可以在方法中写入逻辑、操作数据以及执

  • 本文向大家介绍C语言 基本语法示例讲解,包括了C语言 基本语法示例讲解的使用技巧和注意事项,需要的朋友参考一下 C 基本语法 我们已经看过 C 程序的基本结构,这将有助于我们理解 C 语言的其他基本的构建块。 C 的令牌(Tokens) C 程序由各种令牌组成,令牌可以是关键字、标识符、常量、字符串值,或者是一个符号。例如,下面的 C 语句包括五个令牌: printf("Hello, World!

  • C# 是一种面向对象的编程语言。在面向对象的程序设计方法中,程序由各种相互作用的对象组成。一个对象采取的动作称为方法。 相同种类的对象通常具有相同的属性,或者说,是在相同的类中。 例如,以 Rectangle(矩形)对象为例。它具有 length 和 width 属性。 根据设计,它可能需要接受这些属性值、计算面积和显示细节的方法。 让我们来看看一个 Rectangle(矩形)类的实现,并借此讨论

  • 本文向大家介绍SWFObject基本用法实例分析,包括了SWFObject基本用法实例分析的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了SWFObject基本用法。分享给大家供大家参考。具体分析如下: SWFObject是一个用于在HTML中方面插入Adobe Flash媒体资源(*.swf文件)的独立、敏捷的JavaScript模块。该模块中的JavaScript脚本能够自动检测PC、