C++ Array of pointers: delete or delete []?

后端 未结 8 740
春和景丽
春和景丽 2020-12-04 21:08

Cosider the following code:

class Foo
{
    Monster* monsters[6];

    Foo()
    {
        for (int i = 0; i < 6; i++)
        {
            monsters[i] =         


        
8条回答
  •  萌比男神i
    2020-12-04 21:45

    It would make sens if your code was like this:

    #include 
    
    using namespace std;
    
    class Monster
    {
    public:
            Monster() { cout << "Monster!" << endl; }
            virtual ~Monster() { cout << "Monster Died" << endl; }
    };
    
    int main(int argc, const char* argv[])
    {
            Monster *mon = new Monster[6];
    
            delete [] mon;
    
            return 0;
    }
    

提交回复
热议问题