簡體   English   中英

刪除指針數組中的元素(調整大小)

[英]delete element inside pointers array (resize)

我試圖理解我的代碼下面的指針:

int main()
{

    int size = 5; //Size of array
    int position = 2; //Position to delete

    int *pointer = new int[size]; //Pointer declaration

    //Populates array with numbers starting at 1 up to size elements (5 in this case)
    for (int i = 0 ; i < size; i++)
    {
        pointer[i] = i+1;
    }

    //Prints existing elements (numbers 1 to 5 in this case)
    for (int i = 0 ; i < size; i++)
    {
        std::cout << pointer[i] << ", ";
    }


    return 0;
}

我知道如果我delete [] pointers; 它會從內存中刪除數組,但是如何刪除僅位置2內的對象或調整數組大小?

您不能做任何事情。 您可以在現有分配中移動項目,也可以進行新分配,復制項目並刪除舊分配。

要處理數據,應使用一個稱為vector的容器,該容器提供成員函數以刪除元素或調整大小。 向量在C ++中等同於大多數其他語言稱為“數組”的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM