亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

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

C++對象的動態建立與釋放詳解

2020-01-26 15:44:31
字體:
來源:轉載
供稿:網友

=============下面先給出一個new和delete基本應用的例子,回顧一下它的基本用法============

復制代碼 代碼如下:

#include<iostream>
using namespace std;
int main()
{
 int *p;//定義一個指向int型變量的指針p
 p=new int(3);//開辟一個存放整數的存儲空間,返回一個指向該存儲空間的的地址
 cout<<*p<<endl;
 delete p;//釋放該空間
 char *p_c;
 p_c=new char[10];//開辟一個存放字符數組(包括10個元素)的空間,返回首元素的地址
 int i;
 for(i=0;i<10;i++)
 {
  *(p_c+i)=i+'0';
 }
 for(i=0;i<10;i++)
 {
  cout<<*(p_c+i);
 }
 delete  [] p_c;
 cout<<endl;
 return 0;
}

運行結果:

同樣的,new和delete運算符也可以應用于類的動態建立和刪除

用new運算符動態地分配內存后,將返回一個指向新對象的指針的值,即所分配的內存空間的起始地址。用戶可以獲得這個地址,并用這個地址來訪問對象。

當然C++還允許在執行new時,對新建的對象進行初始化。

復制代碼 代碼如下:

Box *pt =new Box(12,15,18);

用new建立的動態對象一般是不用對象名的,而是通過指針進行訪問,它主要應用于動態的數據結構,如鏈表等。訪問鏈表中的結點,并不需要通過對象名,而是在上一個結點中存放下一個節點的地址,從而用上一個結點找到下一個結點,構成連接關系。

在不再需要使用new建立的對象時,,可以用delete運算符予以釋放。在執行delete運算符的時候,在釋放內存空間之前,會自動調用析構函數。

復制代碼 代碼如下:

#include<iostream>
using namespace std;
class Box
{
 public:
  Box(int w,int l,int h);
  ~Box();
  int width;
  int length;
  int height;
};
Box::Box(int w,int l,int h)
{
 width=w;
 length=l;
 height=h;
 cout<<"========調用構造函數=======/n";
}
Box::~Box()
{
 cout<<"========調用析構函數=======/n";
}
int main()
{
 Box * p=new Box(12,13,15);
 cout<<"/n輸出指針指向的對象的數據成員"<<endl;
 cout<<p->width<<"/t"<<p->length<<"/t"<<p->height<<endl;
 delete p;
 return 0;
}

然后,舉一個更加實際的例子

=========================題目=======================

編寫一個程序,要求先輸入同學的人數,然后分別輸入同學的學號、姓名和英語、數學成績。

然后打印出所有同學的信息

復制代碼 代碼如下:

#include<iostream>
#include<string>
#include<iomanip>
using namespace std;
class Student
{
 public:
  Student(int num, string nam, float e,float m);
  void show();
  Student * next;
 private:
  int number;
  string name;
  float English;
  float Math;
};
Student::Student(int num,string nam,float e,float m)
{
 number=num;
 name=nam;
 English=e;
 Math=m;
}
void Student::show()
{
 cout<<setiosflags(ios::left);
 cout<<setw(10)<<number;
 cout<<setw(15)<<name;
 cout<<"English:"<<setw(10)<<English;
 cout<<"Math:"<<setw(10)<<Math;
 cout<<endl;
}
int main()
{
 int i=0,n;
 cout<<"請輸入同學人數:";
 cin>>n;
 Student * head=NULL;
 Student * node=NULL;
 Student * p=NULL;
 string name;
 float English;
 float Math;
 for(i=1;i<=n;i++)
 {
  cout<<"請輸入第"<<i<<"個同學的姓名,英語成績,數學成績"<<endl;
  cin>>name>>English>>Math;
  node=new Student(i,name,English,Math);
  if(head==NULL)
   head=node;
  else
   p->next=node;
  p=node;
  if(i==n)
   p->next=NULL;
 }
 cout<<"============輸出學生信息=========="<<endl;
 p=head;
 while(p!=NULL)
 {
  p->show();
  p=p->next;
 }
    //==========釋放對象占用的空間=======
       p=head;
       Student * l;
       while(p!=NULL)
       {
                l=p;
                p=p->next;
                delete l;
        }
 return 0;
}

運行結果:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
九九热视频这里只有精品| 国产成人一区二区| 亚洲精品电影网在线观看| 久久精品久久久久电影| 高清欧美性猛交xxxx黑人猛交| 亚洲最大av网| 久久久久国产精品一区| 国产精品久久久久9999| 国产视频亚洲精品| 日韩大片免费观看视频播放| 国产精品久久久久久久久久新婚| 欧美专区国产专区| 久久久伊人欧美| 91社影院在线观看| 亚洲色无码播放| 亚洲国产精品推荐| 日韩中文字幕第一页| 一区二区亚洲欧洲国产日韩| 日韩精品亚洲精品| 久久视频免费观看| 青青草原一区二区| 4p变态网欧美系列| 国产精品久久色| 成人黄色生活片| 亚洲国产精品大全| 亚洲欧美色图片| 亚洲男人的天堂在线| 亚洲人成绝费网站色www| 国产成人精品视频在线观看| 亚洲精品美女在线| 国产午夜精品美女视频明星a级| 国产精品盗摄久久久| 精品久久久久久久久久久久久| 国产精品ⅴa在线观看h| 亚洲丝袜在线视频| 57pao国产成人免费| 日韩欧美精品免费在线| 91精品国产亚洲| 日韩精品中文字幕在线观看| 92看片淫黄大片看国产片| 精品福利在线观看| 欧美日韩国产激情| 欧美成人在线免费视频| 亚洲一区二区三区香蕉| 久久精品99无色码中文字幕| 亚洲美女www午夜| 成人免费午夜电影| 亚洲欧美福利视频| 精品久久香蕉国产线看观看亚洲| 欧美激情一区二区三区成人| 欧美巨乳在线观看| 国产午夜精品视频免费不卡69堂| 欧美福利视频网站| 中文字幕在线看视频国产欧美在线看完整| 亚洲91精品在线| 久久精品国产亚洲7777| 亚洲欧美一区二区三区情侣bbw| 国产日产欧美a一级在线| 97视频网站入口| 97视频人免费观看| 97久久精品人人澡人人爽缅北| 中文字幕欧美精品日韩中文字幕| 亚洲娇小xxxx欧美娇小| 欧美日韩视频免费播放| 日韩国产欧美精品一区二区三区| 韩国视频理论视频久久| 久久精品电影一区二区| 97久久久免费福利网址| 日韩电影中文字幕| 国产精品久久久久9999| 国产一区二区三区四区福利| 日韩高清中文字幕| 法国裸体一区二区| 久久久久久久一区二区| 狠狠色狠狠色综合日日五| 精品亚洲国产视频| 日韩理论片久久| 国产一区欧美二区三区| 色偷偷888欧美精品久久久| 日韩在线精品一区| 欧美午夜视频一区二区| 欧美成人精品在线播放| 亚洲嫩模很污视频| 久久免费高清视频| 久久久久久噜噜噜久久久精品| 成人羞羞国产免费| 日韩欧美主播在线| 亚洲精品福利免费在线观看| 国产一级揄自揄精品视频| 成人黄色在线免费| 91久久久久久久久久久| 成人免费福利在线| 国产99久久精品一区二区永久免费| 久久久在线观看| 永久免费毛片在线播放不卡| 国产欧美精品一区二区三区介绍| 91九色国产在线| 欧美专区国产专区| 97热在线精品视频在线观看| 欧美成人午夜剧场免费观看| 久久久久久久一区二区| 日韩欧美中文第一页| 亚洲专区国产精品| 国产精品爽爽爽爽爽爽在线观看| 亚洲黄色在线观看| 美女少妇精品视频| 少妇av一区二区三区| 欧美黑人一级爽快片淫片高清| 精品国产鲁一鲁一区二区张丽| 欧美激情精品久久久久久久变态| 欧美日韩亚洲精品一区二区三区| 国产精品视频播放| 国产91在线高潮白浆在线观看| 亚洲欧美日韩成人| 国产福利精品在线| 久久99视频精品| 日韩中文字幕在线视频播放| 蜜臀久久99精品久久久无需会员| 亚洲美女性视频| 色偷偷av一区二区三区乱| 欧美一区二区色| 成人午夜两性视频| 亚洲人成77777在线观看网| 97国产精品免费视频| 亚洲级视频在线观看免费1级| 色综合久久悠悠| 欧美日韩国产一区二区三区| 国产精品白丝jk喷水视频一区| 日韩中文字幕国产精品| 欧美午夜影院在线视频| 欧美在线观看视频| 国产九九精品视频| 国产福利精品av综合导导航| 久久中文字幕在线| 国产一区二区黑人欧美xxxx| 91精品视频在线看| 久久久久亚洲精品国产| 欧美极品在线视频| 亚洲天堂开心观看| 日韩小视频在线观看| 中文字幕亚洲欧美| 国产精品久久久久77777| 久久99热精品| 欧美性生交大片免网| 黑人巨大精品欧美一区二区三区| 久久精品美女视频网站| 欧美精品日韩www.p站| 欧美猛男性生活免费| 亚洲美女自拍视频| 日韩免费在线观看视频| 久久精品福利视频| 欧美激情国内偷拍| 亚洲乱码国产乱码精品精天堂| 日韩高清电影好看的电视剧电影| 91欧美精品午夜性色福利在线| 日韩欧美高清在线视频| 欧美精品久久一区二区| 日韩美女中文字幕| 日韩av中文字幕在线免费观看| 疯狂蹂躏欧美一区二区精品| 2023亚洲男人天堂| 国产亚洲精品美女久久久| 日韩的一区二区| 欧美日韩亚洲网|