一. 序言
因为最近接触的项目中频繁出现class和template,对其基础用法有点忘记了,准备写三篇blog来记录一下,也方便自己以后复习
二. 类的概念
类的概念就不多说了,通常来说,类主要包括属性和方法两方面的内容。
以人来举例的话,属性包括人的身高,体重,年龄等参数,而方法包括人的走路,说话,吃饭等行为。
三. 类的基本用法
#include<iostream>
#include<string>
class Person
{
public: // 公共
void SendElement(std::string name, int age)
{
this->m_name = name;
this->m_age = age;
}
void PersonRun()
{
std::cout << m_name << "is running" << std::endl;
}
void PersonAge()
{
std::cout << m_name << " is now " << m_age << " years old" << std::endl;
}
private: //私有属性
std::string m_name;
int m_age;
};
int main()
{
Person p1;
p1.SendElement("老王", 45);
p1.PersonRun();
p1.PersonAge();
return 0;
}
这是类的一个简单的应用。
1 . public和private
public 与 private 为属性/方法限制的关键字.
public 表示公开的属性和方法, 外界可以直接访问或者调用。
private 表示该部分内容是私密的, 不能被外部所访问或调用, 只能被本类内部访问。
2 . 成员函数
我们把SendElement(),PersonRun(),**PersonAge()**叫做成员函数。
类的成员函数是指那些把定义和原型写在类定义内部的函数,就像类定义中的其他变量一样。类成员函数是类的一个成员,它可以操作类的任意对象,可以访问对象中的所有成员。
3 . this指针
在类的方法内部可以使用this指针指向当前调用的对象。
每个对象都拥有一个this指针,通过this指针来访问自己的地址。
this只能在成员函数中使用。全局函数,静态函数不能使用this。(原因:静态函数不属于具体的对象)
具体见这个blog
(https://blog.csdn.net/it_is_me_a/article/details/82181374)
4 . 成员变量名的命名
成员变量名一般以“m_”开头,易于区分。
当然如果你有自己喜欢的代码书写风格也可以采用