⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 list0914.cpp

📁 teach yourself C++ in 21 days 第五版
💻 CPP
字号:
// Listing 9.14 - Resolving memory leaks
  
#include <iostream>
  
class SimpleCat
{
   public:
     SimpleCat (int age, int weight);
     ~SimpleCat() {}
     int GetAge() { return itsAge; }
     int GetWeight() { return itsWeight; }
  
   private:  
     int itsAge;
     int itsWeight;
};
  
SimpleCat::SimpleCat(int age, int weight)
{
     itsAge = age;
     itsWeight = weight;
}
  
SimpleCat & TheFunction();
  
int main()
{
    SimpleCat & rCat = TheFunction();
    int age = rCat.GetAge();
    std::cout << "rCat is " << age << " years old!" << std::endl;
    std::cout << "&rCat: " << &rCat << std::endl;
    // How do you get rid of that memory?
    SimpleCat * pCat = &rCat;
    delete pCat;
    // Uh oh, rCat now refers to ??
    return 0;
}

SimpleCat &TheFunction()
{
    SimpleCat * pFrisky = new SimpleCat(5,9);
    std::cout << "pFrisky: " << pFrisky << std::endl;
    return *pFrisky;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -