標準ライブラリが入り混じったコードの意味が知りたい


以下のコードが何をしてるのか分かりましたら具体的に教えて下さい。

`std::sheard_ptr<std::vector<std::sheard_ptr<RxInfos>>> rxinfo;`




「何をしているか」については「変数」を用意しているだけですが、  
こういった、込み入った型は、typedefかusingを使って  
分解してみるとわかりやすいかもしれません。自分はたいていそうしてます。

[code]

    //std::shared_ptr<std::vector<std::shared_ptr<RxInfos>>> rxinfo;　を分解すると・・
    using   RxInfos_Ptr = std::shared_ptr<RxInfos>;
    using   RxInfos_Ptr_Vct = std::vector<RxInfos_Ptr>;
    using   RxInfos_Ptr_Vct_Ptr = std::shared_ptr< RxInfos_Ptr_Vct>;
    RxInfos_Ptr_Vct_Ptr rxinfo;//最終的にはこれ
    
[/code]

