jjzjj

c++ - 这是一个好的代码吗(在阅读同事的代码时遇到的)

文件a.hpp:classa;typedefboost::shared_ptraPtrclassa{public:staticaPtrCreateImp();virtualvoidFoo()=0;....};文件aImp.hpp:classaImp:publica{virtualvoidFoo();};文件aImp.cpp:aPtra::CreateImp(){returnaPtr(newaImp());}voidaImp::Foo(){}客户端必须使用CreateImp获取指向a的指针,不能使用a其他方式。您如何看待此实现?您如何看待这种实现方式? 最佳答