国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++指針的引用

2019-11-11 01:07:35
字體:
來源:轉載
供稿:網友
// 指針的引用.cpp : 定義控制臺應用程序的入口點。//#include "stdafx.h"#include <iostream>using namespace std;struct Teacher{	char name[64];	int age;};int GetTeacherAge(Teacher* *p)//指針p在內存中的地址{	Teacher *tmp = NULL;	if (p == NULL)	{		return -1;	}	//tmp = (Teacher *)malloc(sizeof(Teacher));//這句話就是分配內存空間//C語言malloc	tmp = new Teacher ();//等價于上面的語句//C++用new	if (tmp==NULL)	{		return -2;	}	tmp->age = 33;	*p = tmp;// p的值是一個地址,*p就是修改這個地址里面的值//因為p是二級指針所以*p儲存的也是一個地址所以將tmp指針賦值給*p	//如果不寫著句下邊的pt就無法指向tmp   	return 0;}//利用指針的引用int GetTeacherAge2(Teacher* &myp)//函數參數為指針{	//給myp賦值就相當于給mian函數中的pt賦值	myp = new Teacher();//給指針分配內存空間	if (myp ==NULL)	{		return -1;	}	myp->age = 36;}void FreeTeacher(Teacher *pt){	if (pt==NULL)	{		return;	}	free(pt);//將指針所指向的內存空間刪掉}//常引用void CoutTeacherAge(const Teacher &myp1){	//常引用,使參數變量擁有了只讀屬性	//myp1.age = 32;//這一句就會報錯,因為不能修改	//除了const int &x = y;這種以變量為右值的定義方法還有	//const int &x = 40;這種方法也可以,這種方法給x自動分配了內存空間,因為是常引用	//int &x = 40;就會報錯,因為40是值沒有內存空間	cout << "myp1:" << myp1.age << endl;}int main(){	Teacher *pt;	GetTeacherAge(&pt);	cout << "age: " << pt->age << endl;	FreeTeacher(pt);	GetTeacherAge2(pt);	cout << "age: " << pt->age << endl;	FreeTeacher(pt);    return 0;}


上一篇:C++指針的引用

下一篇:c++精度輸出

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 金溪县| 吉隆县| 白河县| 丰顺县| 晴隆县| 民权县| 鹤岗市| 新宁县| 怀来县| 七台河市| 庆阳市| 通州市| 佳木斯市| 象州县| 兴宁市| 三亚市| 盐城市| 手游| 灵寿县| 乡城县| 怀宁县| 大港区| 阿拉尔市| 桂平市| 托里县| 翼城县| 新密市| 手游| 绥棱县| 浦江县| 贞丰县| 鹤山市| 乐山市| 林周县| 凤凰县| 西乌珠穆沁旗| 汝阳县| 宣汉县| 梅河口市| 赤峰市| 吉林省|