hotmanの備忘録とライブラリ置き場.

rustでN次元配列を楽に作るマクロ

macro_rules! make_vec{
    ( $val:expr , $head:expr)=>{
        vec![$val;$head]
    };
    ( $val:expr , $head:expr , $($tail:expr),+ )=>{
        vec![make_vec!($val,$($tail),+);$head]
    };
}

で作れます

let mut dp=make_vec!(0,h,w);

のように使います
C++よりは元々作りやすい感じがありますが、それでも有ると便利だと思います

The source code for this blog is available on GitHub.