【C++课程学习】:类和对象(上)(类的基础详细讲解)

🎁个人主页:我们的五年

🔍系列专栏:C++课程学习

🎉欢迎大家点赞👍评论📝收藏⭐文章

 

 

目录

🍟1.1类的引出:

🍟1.2类的结构:

🍟1.3类的两种定义方法:

🍟1.4成员变量命名的建议:


 前言:

C语言是一门面向过程的语言,而C++是一门面向对象的语言。

1.C语言:

关注的是过程,解决提出的问题要逐步调用函数来解决。

2.C++:

C++是面向对象,关注的是对象,其他的有相应的方法

🍟1.1类的引出:

类是在结构体上引出来的,在C语言中,结果体只可以里面只能有数据。而在C++中,结构体中可

以定义函数。而C++中就这把这变成的类(class),但是与结构体还是有区别的,比如:

1.结构体里面的数据全部是公开(public)的,因为C++要兼容C语言。定义了一个结构体,我们可以直接在main函数访问结构体里面的数据。

2.类如果什么都不写的情况下,数据都是私有的(private)。

3.C++中的结构体也不需要加struct。

#include<iostream>
using namespace std;
//结构体
struct Data1{
	int _year;
	int _month;
	int _day;
};
//类
class Data2{
public:
	int _year;
	int _month;
	int _day;
};

int main()
{
	Data2 a;
	a._year = a._month = a._day = 1;
	//Data1 a;
	//a._year = a._month = a._day = 1;
	cout << a._year<<endl;
}


🍟1.2类的结构:

class classname{

        //类体:

        //1.成员函数

        //2.成员变量

};        //和结构体一样,后面有;

class classname{

        //类体:

        //1.成员函数

        //2.成员变量

};        //和结构体一样,后面有;

这些东西大家看看就行:class类的关键字,classname类的名称,{}类的主体,还有后面的封号;;

大家需要看的就是:

类里面的内容分为两种:

1.类里面的数据叫成员变量,或者类的属性,但是我觉得,把它看成类的属性更能突出面向对象,

关注的对象。

2.类里面的函数叫成员函数,或者类的方法。还是一样的,我觉得,类的方法更能突出其面向对象的特点。

🍟1.3类的两种定义方法:

两种方法的主要区别也就是,是否类的方法都在类里面进行声明和定义。

1.类的方法都在类里面声明和定义:

这种情况下,编译器会把函数当成内联函数进行处理。

#include<iostream>
using namespace std;

class Data {
public:
	//声明和定义都在类里面
	void print() {
		cout << "print()" << endl;
	}
private:
	int _data;
};

int main()
{
	Data a;
	a.print();
}

2.类的方法的声明和定义分开,声明在类里面,定义不在类里面:
声明放在.h文件种,定义在.cpp文件中。

#include<iostream>
using namespace std;

class Data {
public:
	//声明
	void print();
private:
	int _data;
};

//定义:
void Data::print() {
	cout << "声明和定义分离" << endl;
}

int main()
{
	Data a;
	a.print();
}

🍟1.4成员变量命名的建议:

一般我们介意在类的变量名称中加入一些符号以区分。

一般的就是在名字前面加_,或者在名字后面加_。不同的公司有不同的命名方式。

比如:

#include<iostream>
using namespace std;

class Data {
public:
	//声明
	void print();
private:
	//在data前面加上_
	int _data;
};

//定义:
void Data::print() {
	cout << "声明和定义分离" << endl;
}

int main()
{
	Data a;
	a.print();
}

相关推荐

  1. C++——对象

    2024-06-09 07:56:01       23 阅读
  2. C++对象()

    2024-06-09 07:56:01       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-09 07:56:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-09 07:56:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-09 07:56:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-09 07:56:01       20 阅读

热门阅读

  1. Hbase中Rowkey的设计方法

    2024-06-09 07:56:01       8 阅读
  2. 回溯算法举例

    2024-06-09 07:56:01       9 阅读
  3. C++设计模式---单例模式

    2024-06-09 07:56:01       8 阅读
  4. 使用 LLaMA-Factory 实现对大模型函数调用功能

    2024-06-09 07:56:01       7 阅读
  5. 二叉树----7-3 列出叶结点

    2024-06-09 07:56:01       8 阅读