首页 > 编程语言 >C++中的类简要介绍

C++中的类简要介绍

时间:2023-06-21 20:05:56浏览次数:48  
标签:简要 struct int 介绍 public 默认 C++ class

(文章目录)


前言

本篇文章讲给大家介绍一个C++中重要的概念,了解了这个概念大家就明白了为什么C++会叫做面向对象编程了。

一、什么是类什么是对象

1.类的概述

其实我们生活中有很多类的例子,就像老虎是猫科动物可以看作一个大类,昆虫又是一个大类,机动车和非机动车又是不同的类。通过发现就可以知道自然界中有很多很多的类。我们通常把行为或者属性相近的事物归为同一个类。

2.对象的概述

对象又是什么?这里的对象可不是说的男女朋友的这种对象。 对象就是类的一个具体形态,也就相当于是一个独立的个体。

二、如何创建使用类

在C语言中我们都知道用struct可以创建一个结构体,到了C++中我们可以使用struct去创建一个类。 示例:

#include <iostream>
#include <string>

using namespace std;

struct A
{
    int i;
    void fun(void)
    {
        cout << "hello" << endl;
        cout << i << endl;
    }
};


int main()
{
    A a;
    a.fun();

    return 0;
}

到了C++中使用class代替struct创建类

calss A
{
    int i;
    void fun(void)
    {
        cout << "hello" << endl;
        cout << i << endl;
    }
};

三、class和struct创建类时的区别

1.访问级别

class的默认访问权限是private,而struct的默认访问权限是public。这意味着,如果我们在class中定义一个成员变量或成员函数,则它们默认情况下是私有的,只能在类内部访问;而在struct中定义,则它们默认情况下是公共的,可以在类的外部访问。

#include <iostream>


using namespace std;

class Test
{
	int i;
public:
	int Geti()
	{
		return i;
	}
};

struct Test1
{
	int i;

	int Geti()
	{
		return i;
	}
};

int main()
{
	Test t1;
	Test1 t2;

	t1.i = 10;
	t2.i = 10;


	return 0;
}

这里分别使用struct和class创建了两个类,使用t1.i对i直接进行赋值是错误的。 但是使用t2,i直接对i进行赋值则是正确的。 通过这个例子就可以看出来class的默认访问权限是private,而struct的默认访问权限是public。

2.继承方式

class支持三种继承方式:public、private和protected,而struct只支持public继承。这意味着,如果我们使用class创建一个类,可以通过private和protected继承来隐藏成员变量和成员函数,使得类的设计更加灵活。 除了这些区别之外,class和struct在其他方面是相同的。它们都可以定义成员变量和成员函数,都可以使用构造函数和析构函数,都可以进行继承和多态等面向对象编程的特性。

总结

利用好C加加中的类是学好C加加非常重要的一部分,希望大家在学习类时能够重视起来。

标签:简要,struct,int,介绍,public,默认,C++,class
From: https://blog.51cto.com/u_16153875/6531105

相关文章

  • 程序删除自身 c++ win32
    include<windows.h>//设置本程序进程基本为实时执行,快速退出。SetPriorityClass(GetCurrentProcess(),REALTIME_PRIORITY_CLASS);SetThreadPriority(GetCurrentThread(),THREAD_PRIORITY_TIME_CRITICAL);//通知资源管理器,本程序删除SHChangeNotify(SHCNE_DELETE,SHCNF_PA......
  • Oracle 19c新特性介绍(仅包含RAC、DG和备份)
    本文参考:OracleDatabaseDatabaseNewFeaturesGuide,19c,目前版本为2023年03月。摘抄RAC、DG和备份这三块的新特性介绍。1RAC新特性1.1Grid零停机补丁升级1.1.1切换Grid主目录原文摘抄:Usethe-switchGridHomeoptiontoswitchfromthesourceOracleGridInfrastruct......
  • 认识soui4js(第三篇):使用C/C++开发扩展模块
    首先需要明确:JS代码本身不具备直接调用系统API的能力,JS代码能调用什么功能,都依赖于其它扩展模块提供了什么样的接口。soui4js模块将soui的界面能力作为一个js模块导出到了js中,使得js可以和C++一样操作GUI。但是操作GUI只是一个客户端APP的一个需求。一个产品可能会有各种需求是......
  • C#语言async, await 简单介绍与实例(入门级)
       本文介绍异步编程的基本思想和语法。在程序处理里,程序基本上有两种处理方式:同步和异步。对于有些新手,甚至认为“同步”是同时进行的意思,这显然是错误的。同步的基本意思是:程序一个个执行方法,或者说在方法调用上,fun1(),fun2(),fun3(),fun4().. 按顺序调用,而异步的意思......
  • Lowes EDI 项目数据库方案开源介绍
    近期为了帮助广大用户更好地使用EDI系统,我们根据以往的项目实施经验,将成熟的EDI项目进行开源。用户安装好知行之桥EDI系统之后,只需要下载我们整理好的示例代码,并放置在知行之桥指定的工作区中,即可开始使用。今天的文章主要为大家介绍LOWE'SEDI项目,了解如何获取开源的项目......
  • C++ 中的运算符重载
     您可以重定义或重载大部分C++内置的运算符。这样,您就能使用自定义类型的运算符。重载的运算符是带有特殊名称的函数,函数名是由关键字operator和其后要重载的运算符符号构成的。与其他函数一样,重载运算符有一个返回类型和一个参数列表。https://www.lekaowang.com/jszgz/z......
  • C++ 中的函数重载
     在同一个作用域内,可以声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数、类型或者顺序)必须不同。您不能仅通过返回类型的不同来重载函数。https://www.lekaowang.com/jszgz/zxj/lfb/......
  • C++ 多态
     多态按字面的意思就是多种形态。当类之间存在层次结构,并且类之间是通过继承关联时,就会用到多态。C++多态意味着调用成员函数时,会根据调用函数的对象的类型来执行不同的函数。https://www.lekaowang.com/zhxfgcs/kfx/0j0/......
  • 泛在电力物联网的概念及“云边端”的介绍
    安科瑞虞佳豪泛在电力物联网的概念泛在物联网通常是指在任何时间地点、人员与物质之间信息的有机互联与交互,而泛在电力物联网则具体指的是电力用户、电力企业与供应商和设备之间的信息互联交互。可以说泛在电力物联网就是在电力系统中应用互联网技术,实现不同信息传感设备之间的资源......
  • 泛在电力物联网的基本架构及安科瑞云平台的介绍
    安科瑞虞佳豪泛在电力物联网的基本架构通常来讲泛在电力物联网的基本架构主要分为三个方面:技术架构、标准架构与应用架构。就技术架构而言,主要分为感知、网络、平台与应用4个层面。感知层面主要完成数据信息的协同采集。通过边缘计算使得终端设备的智能化得到了广泛提高。网络......