錆カスタムスマートポインタ

ディープ、本当に深いです。

std ::オプスを使用する:: DEREFを。

構造体 MyBox <T> (T)。

IMPL <T> MyBox <T> { 
    
    FN 新しい(x:T) - > MyBox <T> { 
        MyBox(X)
    } 
} 

IMPL <T> DEREF ため MyBox <T> { 
    型ターゲット = T。
    FN DEREF( 自己) - >&T {
        &自己。0 
    } 
} 

こんにちはFN(名前:STR){ 
    printlnのは!(" !こんにちは、{} " 、名前)。
; 
    聞かせてY = MyBox :: 新しい(x)は、

    assert_eq(!5 、X); 
    assert_eq(!5、* Y); 

    聞かせてメートル = MyBox :: (文字列:: から" " )); 
    ハロー(M)。
}

おすすめ

転載: www.cnblogs.com/aguncn/p/11440479.html