C++类与对象

文章介绍了C++中类的定义和使用,包括成员函数的声明和实现,数据成员的初始化,以及对象的声明和引用。示例展示了如何创建Student和Rect类,设置和获取成员变量的值,以及计算矩形面积。此外,还讨论了访问控制权限,如公有成员和私有成员的用法。
摘要由CSDN通过智能技术生成

在类内定义函数,代码量较少型

class Student
{
public:
	//成员函数
	int GetId()
	{
		return m_id;
	}
	void SetId(int id)
	{
		m_id = id;
	}
	char *GetName()
	{
		return m_name;
	}
	void SetName(const char * sname)
	{
		strcpy(m_name, sname);
	}
	int GetAge()
	{
		return m_age;
	}
	void SetAge(int age)
	{
		m_age= age;
	}
	char GetSex()
	{
		return m_sex;
	}
	void SetSex(char sex)
	{
		m_sex = sex;
	}
private://数据成员
	int m_id;
	char m_name[20];
	int m_age;
	char m_sex;
};

关于类的实现说明

1、类的数据成员需要初始化,成员函数还要添加实现代码。类的数据成员不可以在类的声明中初始化。在这里插入图片描述
2、空类是C++种最简单的类,其声明方式如下:

class Cat
{

};

对象的声明

类名 对象名表
Cat k;
Student s1, s2, s3;

对象的引用

成员变量引用的表示: 对象名.成员名
成员函数引用的表示: 对象名.成员名 (参数表)

int main()
{
	Student s;
	s.SetId(1);
	s.SetName("小刚");
	s.SetAge(10);
	s.SetSex('M');
	cout << s.GetId() << endl;
	cout << s.GetName << endl;
	cout << s.GetAge << endl;
	cout << s.GetSex << endl;
	return 0;
}

计算矩形面积

#include <iostream>
using namespace std;
class Rect
{
 public:
	void SetValue(double width, double height)
	{
		m_width = width;
		m_height = height;
	}
	double GetWidth()
	{
		return m_width;
	}
	double GetHeight()
	{
		return m_height;
	}
	double GetArea()
	{
		return m_width * m_height;
	}
private:
	double m_width;
	double m_height;

};
int main()
{
	Rect r1;
	r1.SetValue(5, 6);
	cout << r1.GetArea()<< endl;
	cout << r1.GetHeight() << endl;
	cout << r1.GetWidth() << endl;
	Rect r2,r3;
	r2.SetValue(1, 2);
	cout << r2.GetArea << endl;
	r3.SetValue(3, 4);
	cout << r3.GetArea << endl;
	return 0;
}

访问控制权限

#include <iostream>
using namespace std;
class Person
{
 public:
	 char name[20];
	 int age;
	 Person() :age(0)
	 {
		 strcpy(name, "无名");
	 }
	 Person(char *sname, int sage)
	 {
		 strcpy(name, sname);
		 age = sage;
	 }
	 void display()
	 {
		 cout << "姓名:" << name << " 年龄:" << age << endl;
	 }
private:
	

};
int main()
{
	Person  p1;
	Person  p2 ("Lucy", 20);
	cout << p1.name << " " << p1.age << endl;
	p1.display();
	p2.display();
	return 0;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值