Fork自 PaddlePaddle / Paddle
reason: dereferencing smart pointer is the same as the underlying pointer test=develop