C++ 类和对象基础篇

yizhihongxing

C++ 类和对象基础篇

什么是类和对象

在C++中,类是一种自定义的数据类型,也是一种数据结构。它可以包含变量和函数,这些变量和函数被称为类的成员。对象是类的一个实例,是具有类定义的属性和操作的变量。

如何定义类

在C++中,通过关键字class来定义一个类。通常格式如下:

class ClassName{
    private:  //私有成员
        int member1;
        string member2;
    public:  //公有成员
        void func1();
        double func2(int para);
};

其中,private关键字用来表示私有成员,只有类内部可以访问;public关键字用来表示公有成员,可以在类内部和外部访问。

如何创建对象

在C++中,通过new关键字来创建一个对象。通常格式如下:

ClassName* objectName = new ClassName();

也可以直接创建一个对象,格式如下:

ClassName objectName;

如何访问成员

在C++中,可以通过“.”来访问对象的成员。例如,访问对象的成员函数,格式如下:

objectName.func1();

访问对象的成员变量,格式如下:

objectName.member1;

示例

下面通过两个示例来说明类和对象的基本使用。

示例1:点坐标类

#include<iostream>
using namespace std;

class Point{
private:
    int x;
    int y;
public:
    void setPoint(int a, int b){
        x = a;
        y = b;
    }
    int getx(){
        return x;
    }
    int gety(){
        return y;
    }
    void print(){
        cout<<"("<<x<<","<<y<<")"<<endl;
    }
};

int main(){
    Point p;
    p.setPoint(3,4);
    p.print();
    return 0;
}

在示例中,我们定义了一个Point类,它包含私有成员xy,分别表示点的横坐标和纵坐标。还定义了公有成员setPoint()getx()gety()print(),分别用来设置坐标、获取坐标和打印坐标。在main()函数中,创建了一个Point对象p,并通过setPoint()设置了坐标,最后通过print()函数打印了坐标。

示例2:学生类

#include<iostream>
#include<string>
using namespace std;

class Student{
private:
    string name;
    int age;
    int score;
public:
    void setName(string n){
        name = n;
    }
    void setAge(int a){
        age = a;
    }
    void setScore(int s){
        score = s;
    }
    void print(){
        cout<<"Name:"<<name<<endl;
        cout<<"Age:"<<age<<endl;
        cout<<"Score:"<<score<<endl;
    }
};

int main(){
    Student stu;
    stu.setName("Tom");
    stu.setAge(18);
    stu.setScore(89);
    stu.print();
    return 0;
}

在示例中,我们定义了一个Student类,它包含私有成员nameagescore,分别表示学生的姓名、年龄和分数。还定义了公有成员setName()setAge()setScore()print(),分别用来设置和获取学生的信息和打印学生的信息。在main()函数中,创建了一个Student对象stu,并通过setName()setAge()setScore()分别设置了学生的姓名、年龄和分数,最后通过print()函数打印了学生的信息。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C++ 类和对象基础篇 - Python技术站

(0)
上一篇 2023年6月27日
下一篇 2023年6月27日

相关文章

  • Python中类的定义、继承及使用对象实例详解

    下面是关于Python中类的定义、继承及使用对象实例的完整攻略: 类的定义 在Python中,通过class关键字来定义一个类。类的定义通常包含类的属性和方法。在类中定义方法时,默认第一个参数是self,代表该方法所属的实例对象。实例对象的属性可以通过self来定义和引用。 以下是一个定义Person类的示例: class Person(object): d…

    other 2023年6月26日
    00
  • Python类继承及super()函数使用说明

    Python类继承及super()函数使用说明 在Python中,类继承是一种非常强大的模式,它允许使用已存在的类来定义新的类。子类可以重用父类的属性和方法,并且可以添加自己的属性和方法。当我们需要多个类共享相同的代码时,使用类继承可以减少代码重复,提高代码的复用性和可维护性。本文将详细介绍Python类继承的相关知识和使用super()函数的方法。 基本的…

    other 2023年6月26日
    00
  • ASP.NET实现根据IP获取省市地址的方法

    ASP.NET实现根据IP获取省市地址的方法 简介 在ASP.NET中,我们可以使用第三方的IP地址库来实现根据IP获取省市地址的功能。这种方法可以帮助我们根据用户的IP地址获取其所在的省市信息,从而实现更精确的定位和个性化服务。 步骤 1. 获取IP地址 首先,我们需要获取用户的IP地址。在ASP.NET中,可以通过Request.UserHostAddr…

    other 2023年7月30日
    00
  • javascript获取当前ip的代码

    获取当前 IP 地址是一个常见的需求,可以通过 JavaScript 来实现。下面是一种常用的方法来获取当前 IP 地址的代码: // 使用异步请求获取 IP 地址 function getIPAddress() { return new Promise((resolve, reject) => { const xhr = new XMLHttpReq…

    other 2023年7月31日
    00
  • 查看oracle日志文件路径

    当我们在Oracle数据库中遇到问题时,查看日志文件是非常重要的。在某些情况下,我们需要查看Oracle日志文件路径,以便进行故障排除和问题解决。以下是查看Oracle日志文件路径的完整攻略。 步骤 以下是查看Oracle日志文件路径的步骤: 连接到Oracle数据库:我们需要使用SQL*Plus或其他Oracle客户端工具连接到Oracle数据库。 查询日…

    other 2023年5月6日
    00
  • 如何把pandas所有数据变成一个list

    以下是如何把pandas所有数据变成一个list的完整攻略,过程中包含两个示例说明的标准Markdown格式文本: 如何把pandas所有数据变成一个list的完整攻略 在pandas中,可以使用values属性将DataFrame或Series对象转换为NumPy数组,然后使用tolist()将数组转换为Python列表。以下是将pandas所有数据转换为…

    other 2023年5月10日
    00
  • 利用rapidjson实现解析嵌套的json的方法示例

    利用 RapidJSON 实现解析嵌套的 JSON 的方法示例 RapidJSON 是一个高性能的 C++ JSON 解析库,它提供了一种简单而灵活的方式来解析和生成 JSON 数据。下面是一个详细的攻略,介绍如何使用 RapidJSON 解析嵌套的 JSON 数据。 步骤一:安装 RapidJSON 首先,你需要安装 RapidJSON 库。你可以从 Ra…

    other 2023年7月28日
    00
  • C的|、||、&、&&、异或、~、!运算符

    当我们使用C语言编写程序时,我们经常需要使用运算符来进行条件判断、逻辑运算等操作。C语言提供了许多运算符,其中包括位运算符和逻辑运算符。这里介绍C的|、||、&、&&、异或、~、!运算符的详细攻略。 位运算符 按位或运算符(|) 按位或运算符用符号“|”表示,它将两个操作数的每一个对应的位进行“或”运算。 例如,下面的代码将输出13:…

    other 2023年6月27日
    00
合作推广
合作推广
分享本页
返回顶部