小甲鱼 发表于 2013-8-12 01:48:36

第三十三讲 动态内存管理(课件+源代码)

《C++快速入门》033 - 课件+典型例题源代码


本讲教学视频下载地址:动态内存管理 -《C++快速入门》033


附件包含:课件+典型例题源代码






注:VIP会员享有免费下载本站所有资源的特权!

友情提示:通过购买鱼C光盘(具体内容)赞助鱼C工作室均可加入VIP会员^_^



妖唁禍眔 发表于 2014-11-29 16:09:08

强烈支持楼主ing……

fisheryao 发表于 2017-12-4 11:05:28

支持!!!

洵梦 发表于 2018-4-3 19:57:32

课后?

hogen 发表于 2019-11-1 14:14:46

#include <iostream>
#include <string>
#include <climits>

// new 是从内存池(堆)中申请一块内存   delete 是将申请的内存删除 必须成对出现 并将指针NULL
class Company
{
public://都可以调用
        Company(std::string theName);
        virtual void printInfo();//打印信息
//private://只用本类才能调用
protected://只用本类和本类派生出来的类才能调用
        std::string theName;
};
class TechCompany : public Company
{
public:
        TechCompany(std::string theName,std::string product);
        virtual void printInfo();
//private:
protected:
        std::string product;
};
Company::Company(std::string theName)
{
        this->theName=theName;
}
void Company::printInfo()//打印信息 具体类的方法实现在外部不用virtual
{
        std::cout<<"这个公司的名字叫"<<theName<<std::endl;
}
TechCompany::TechCompany(std::string theName,std::string product) :Company(theName)
{
       this->product=product;//产品的名字
       //theName公司的名字继承基类 :Company(theName)
}
void TechCompany::printInfo()//打印信息 具体类的方法实现在外部不用virtual
{
        std::cout<<"这个公司的名字叫"<<theName<<"标志性产品名称"<<product<<std::endl;
}

int main()
{
        Company*CompanyHogen=new Company("woyunjiqiren");//申请一个Company类型的指针 指向被申请得到的首地址赋值给*CompanyHogen
        CompanyHogen->printInfo();
        delete CompanyHogen;//删除刚刚申请的内存防止内存泄露
        CompanyHogen=NULL;//同时必须将指针赋值为NULL 这样在访问这个指针时什么都不指向&解析地址时会报错

        TechCompany*TechCompanyHogen=new TechCompany("苹果公司","iphone");
        TechCompanyHogen->printInfo();
        delete TechCompanyHogen;//删除刚刚申请的内存防止内存泄露
        TechCompanyHogen=NULL;//同时必须将指针赋值为NULL 这样在访问这个指针时什么都不指向&解析地址时会报错

        system("pause");
        return 0;
}

hogen 发表于 2019-11-1 14:24:41

        CompanyHogen=new TechCompany("苹果公司","iphone"); //将原来的指针重新申请一个TechCompany("苹果公司","iphone")类的对象数据
        CompanyHogen->printInfo();
        delete CompanyHogen;//删除刚刚申请的内存防止内存泄露
        CompanyHogen=NULL;//同时必须将指针赋值为NULL 这样在访问这个指针时什么都不指向&解析地址时会报错
页: [1]
查看完整版本: 第三十三讲 动态内存管理(课件+源代码)