【C++学习笔记6】实验6-类与对象基本知识(3)

案例:
对象数组及遍历
创建汽车对象数组,对象元素采用匿名对象实例化,然后遍历对象数组,访问每个元素的display方法。
输入:

输出:
奥迪 230000
宝马 350000
奔驰 400000

#include <iostream>
#include<string>
using namespace std;
class Car{
private:
	string brand;
	double price;
public:
	Car(){
	}
	Car(string brand,double price){
		this->brand = brand;
		this->price = price;
	}	
	void display(){
		cout<<this->brand<<" "<<this->price<<endl;
	}
};

int main(){ 


//cout<<"奥迪 230000\n宝马 350000\n奔驰 400000"<<endl;
Car("奥迪",230000).display();//匿名对象实例化
Car("宝马",350000).display();
Car("奔驰",400000).display();


	return 0;
}

案例:
函数参数类型、普通对象、对象引用、对象指针

根据要求创建方法:
showStudent1方法,参数类型为普通对象,输出“对象作为函数参数”提示,并调用对象display方法
showStudent2方法,参数类型为对象指针,输出“对象指针作为函数参数”提示,并指向display方法
showStudent3方法,参数类型为对象引用,输出“对象引用作为函数参数”提示,并调用对象display方法。

输入:

输出:
对象作为函数参数
张宝 22
对象指针作为函数参数
金天 25
对象引用作为函数参数
王勇 25

#include <iostream>
#include<string>
using namespace std;
class Student
{
	string name;
	int age;                           
public:
	//构造函数
	Student(){
	}
	Student( string name , int age){
		this->name = name;
		this->age = age;
	}
	void display(){
		cout<<this->name<<" "<<this->age<<endl;
	}
};



//对象作为函数参数
void showStudent1(Student std){
//实参的值std传给形参std,方法内改变形参,对实参无影响
    cout<<"对象作为函数参数"<<endl;
    std.display();
}
//对象指针作为函数参数
void showStudent2(Student* std){
//形参std是对象的指针,实参&std2是对象的地址值,方法内改变std相当于改变std2
    cout<<"对象指针作为函数参数"<<endl;
    std->display();
}
//对象引用作为函数参数
void showStudent3(Student& std){
//等于给std3起了一个“std”的小名,方法内改变std相当于改变std3
    cout<<"对象引用作为函数参数"<<endl;
    std.display();
}

//引用与指针的区别是:引用相当于起别名,指针相当于通过指针这个媒介访问地址

int main(){ 
	Student std("张宝",22);
	showStudent1(std);

	Student std2("金天",25);
	showStudent2(&std2);

	Student std3("王勇",25);
	showStudent3(std3);
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值