Redefined smart pointer classes in safer way
Merge pull request #200 from TsudaKageyu/smartptr

Redefined smart pointer classes in safer way