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

📄 leaky.cpp

📁 24小时攻克C++课本中的程序
💻 CPP
字号:
 // Listing 12.5

 // 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!\n";

     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 + -