溫馨提示×

C++智能指針如何進行動態(tài)分配

c++
小樊
81
2024-11-08 21:42:21
欄目: 編程語言

在C++中,智能指針是一種對象,它可以存儲指向動態(tài)分配內存的指針,并在不再需要時自動釋放內存

#include <iostream>
#include <memory> // 包含智能指針的頭文件

int main() {
    // 使用std::make_unique創(chuàng)建一個動態(tài)分配的整數
    std::unique_ptr<int> ptr = std::make_unique<int>(42);

    // 輸出智能指針指向的內存地址
    std::cout << "Memory address: " << ptr.get() << std::endl;

    // 輸出智能指針指向的值
    std::cout << "Value: " << *ptr << std::endl;

    // 當智能指針離開作用域時,它會自動釋放指向的內存
    return 0;
}

在這個例子中,我們使用std::make_unique創(chuàng)建了一個動態(tài)分配的整數。std::unique_ptr是一個智能指針,它可以確保在不再需要時自動釋放內存。我們還展示了如何使用get()方法獲取智能指針指向的內存地址,以及使用*操作符獲取該地址處的值。當ptr離開作用域時,它會自動釋放指向的內存。

0