ヒープ領域とは、プログラム実行時に動的にメモリを割り当てるための領域
ヒープ領域は関数が終わっても存在することができ、所有者が居なくなった時点で解放される
struct Point {
    x: i32,
    y: i32,
}
fn main(){
    let p: Box<Point> = Box::new(Point {x:100, y:200});
    println!("{} {}", p.x, p.y);
}
new演算子、std::vectorはヒープ領域を使用している。
#include <iostream>
#include <limits>
#include <exception>
int main()
{
    std::cout << std::hex << std::numeric_limits<uintptr_t>::max() << std::end;
    try {
        char* temp= new char[std::numeric_limits<uintptr_t>::max()];
        std::cout << temp << "\n";
    }
    catch(std::bad_alloc& e){
        std::cout << e.what() << "\n";
    }
    return 0;
}
#include <iostream>
#include <limits>
#include <exception>
int main()
{
    int* array = new int[5];
    for(int i = 0; i < 5; ++i){
        array[i] = i*i;
    }
    delete[] array;
    array = nullptr;
    return 0;
}
いまいちboxの使い所と書き方がわかりませんな…
 
					 
