首页 > 其他分享 >类、结构体、指针、引用

类、结构体、指针、引用

时间:2024-12-06 19:57:30浏览次数:5  
标签:string int money age private 引用 指针 public 结构

1.类与结构体

类的定义:

class Person
{
	private:
		int age,height;
		double money;
		string books[100];
	public:
		string name;
		void say()
		{
			cout<<"I'm"<<name<<endl;
		}
		void set_age(int age1)
		{
			if(age1>=0 && age<=130)
			{
				age=age1;
			}
		}
		int get_age()
		{
			return age;
		}
		void add_money(double x)
		{
			money+=x;
		}
};

类中的变量和函数被统一称为类的成员变量
private后面的内容是私有成员变量,在类的外部不能访问;public后面的内容是公有成员变量,在类的外部可以访问。
类的使用:

#include<iostream>
#include<string>
using namespace std;
class Person
{
	private:
		int age,height;
		double money;
		string books[100];
	public:
		string name;
		void say()
		{
			cout<<"I'm "<<name<<endl;
		}
		void set_age(int age1)
		{
			if(age1>=0 && age<=130)
			{
				age=age1;
			}
		}
		int get_age()
		{
			return age;
		}
		void add_money(double x)
		{
			money+=x;
		}
}person_a,person_b,persons[100];
int main()
{
	Person c;
	c.name="yxc";		//正确!访问公有变量
	c.age=18		//错误!访问私有变量
	c.set_age(18);		//正确!set_age()是共有成员变量
	c.add_money(100);
	c.say();
	cout<<c.get_age()<<endl;
	return 0;
}

结构体和类的作用是一样的。不同点在于类默认的是private,结构体默认是public。

struct Person
{
	private:
		int age,height;
		double money;
		string books[100];
	public:
		string name;
		void say()
		{
			cout<<"I'm "<<name<<endl;
		}
		void set_age(int age1)
		{
			if(age1>=0 && age<=130)
			{
				age=age1;
			}
		}
		int get_age()
		{
			return age;
		}
		void add_money(double x)
		{
			money+=x;
		}
}person_a,person_b,persons[100];

标签:string,int,money,age,private,引用,指针,public,结构
From: https://www.cnblogs.com/wzr123/p/18591311

相关文章

  • C++从零到进阶 ③.1循环结构(介绍)
    本次是【C++从零到进阶】的第③课(介绍):循环结构介绍我们一个个来介绍提示:介绍单吃很难吃透,需要结合后续练习跟进才能做到掌握哦!目录一、for语句1.语句格式:2.使用范例3.详细说明4.语句执行过程二、while语句1.格式2.例子三、do-while语句四、循环嵌套五、退......
  • 17 设计模式之组合模式(公司员工结构案例)
    一、组合模式的定义        组合模式(CompositePattern)是一种结构型设计模式,它让我们可以将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式允许客户端以统一的方式对待单个对象和对象集合。它适用于表示具有层次关系的对象结构。        组合模......
  • 16-结构体
    16-结构体结构体可以让C语言创建出新的类型。/*创建一个学生类型*/structStu{ charname[20]; //名字 intage; //年龄 doublescore; //成绩};/*创建一个书的类型*/structBook{ charname[20]; //名字 floatprice; //价格 charid[30]; //书号};......
  • 15-指针
    15-指针内存是电脑上特别重要的存储器,计算机中程序的运行都是在内存中进行的。所以为了有效的使用内存,就把内存划分成一个个小的内存单元,每个内存单元的大小是1个字节。为了能够有效的访问到内存的每个单元,就给内存单元进行了编号,这些编号被称为该内存单元的地址。【注】内存......
  • 数据结构-八大排序
    插入排序时间复杂度为\(O(n^2)\)//插入排序(下标从1开始存放元素)(王道数据结构)voidInsertSort(inta[],intn){ inti,j; for(i=2;i<=n;i++){ if(a[i]<a[i-1]){ a[0]=a[i];//数组首位位缓存区,也就是哨兵 for(j=i-1;a[0]<a[j];j......
  • jvm内存结构详解
    JVM内存结构是Java程序运行的核心,它管理着程序运行时所需的内存空间,确保内存分配、回收以及线程之间的安全和高效通信。以下是JVM内存结构的详细解析:1. 程序计数器(ProgramCounterRegister):• 每个线程都有自己的程序计数器,用于记录当前线程正在执行的字节码指令的地址。......
  • C:结构体、联合体
    结构体结构体类型的存储区里包含多个子存储区,每个子存储区可以用来记录对应的信息子存储区(成员变量)可以是不同的数据类型,也可以是结构体类型的结构体声明语句用来创建结构体类型,需要使用struct关键字结构体类型名称由关键字struct和结构体名称一起构成结构体成员变量声......
  • 数据结构——图(遍历,最小生成树,最短路径)
    目录一.图的基本概念二.图的存储结构1.邻接矩阵2.邻接表三.图的遍历1.图的广度优先遍历2.图的深度优先遍历四.最小生成树1.Kruskal算法2.Prim算法五.最短路径1.单源最短路径--Dijkstra算法2.单源最短路径--Bellman-Ford算法3.多源最短路径--Floyd-Warshall算法......
  • C:数据类型、控制结构
    基本语法概述C语言程序里大括号可以用来代表函数(函数可以看作一组语句)C语言里每个函数都必须有名字,不同函数的名字不能相同C语言程序必须包含一个叫做main的函数,这个函数叫做主函数(入口函数)程序从主函数的第一条语句开始执行,当主函数里最后一条语句结束后整个程序结束函......
  • 南科大龚欣课题组在ABCA蛋白结构和转运机制模型领域的研究进展
    研究背景ABC转运蛋白(ATP-bindingcassettetransporter)是一类ATP驱动泵,在人类基因组已发现48种,分为7个亚家族(A-G)。ABC转运蛋白由两个跨膜结构域(TMD)和两个胞质侧ATP结合域(NBD)组成。TMD通过构象变化实现分子跨膜转运,NBD结合或水解胞浆中的ATP,确保转运底物所需能量。而在ABCA亚......