Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Bài 47: Cấp phát mảng động

18:09 29-09-2021 605 lượt xem 1 bình luận 20:42 29-09-2021

Dạ mọi người cho em hỏi cái này với ạ, em đang học bài 47 thì có đoạn code như sau:

#include<iostream>

using namespace std;

int main()

{
  

    int size(3);

    int* array = new int[size] {1, 2, 3};

    int newSize = 4;

    int* resize = new int[newSize];

    for (int i = 0; i < size; i++)
    {
        resize[i] = array[i];
    }

    delete[] array;
    array = resize;
    size = newSize;
   
    delete[] resize;
    system("pause");
    return 0;
}

-Dạ thứ nhất cho em hỏi khi mình dùng lệnh delete[] array thì có phải nó chỉ thu hồi lại bộ nhớ nhưng vẫn còn cái kích thước bộ nhớ ban đầu là Size không ạ hay là nó mất luôn?

-Dạ thứ hai là tại sao khi mình đã dùng lệnh array = resize thì dòng dưới mình lại phải có thêm dòng size = newSize , ở đât em không biết là khi mình gán như vậy số kích thước hắn có gán qua cái kích thước cũ không ấy ?

Dạ Mong mọi người giúp em với ạ <3 <3

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
K9 SuperAdmin, KquizAdmin, KquizAuthor đã bình luận 12:08 04-10-2021
1. còn size nha
2. 2 thằng chẳng liên quan

Câu hỏi mới nhất