MFC+ADO+SQL SERVER 2000的四个智能指针有关问题(_ConnectionPtr,RecordsetPtr,CommandPtr,Para)
MFC+ADO+SQL SERVER 2000的四个智能指针问题(_ConnectionPtr,_RecordsetPtr,_CommandPtr,_Para)
_ConnectionPtr, _RecordsetPtr, _CommandPtr, _ParameterPtr;
这四个智能指针既可以用"."调用, 又可以使用"->"调用, 调用的东西还不一样, 昨天才开始实习, 以前没接触过智能指针, 使用的时候有什么注意事项么? 比如.Release()和->Releas()有什么区别么?
另外为什么这么设计呢.
------解决方案--------------------
_ConnectionPtr类型是一个类,其内部有一个成员IUnknown类型的指针,该类重要最关键的重载了->运算符
所以看起来像是指针操作,实际是运算符调用
Release()//一般使用这个
和->Releas()//这个有没有重载我没有试过
实际上,一般使用智能指针,你不需要自己去调用这个,类对象自己会维护计数
_ConnectionPtr, _RecordsetPtr, _CommandPtr, _ParameterPtr;
这四个智能指针既可以用"."调用, 又可以使用"->"调用, 调用的东西还不一样, 昨天才开始实习, 以前没接触过智能指针, 使用的时候有什么注意事项么? 比如.Release()和->Releas()有什么区别么?
另外为什么这么设计呢.
------解决方案--------------------
_ConnectionPtr类型是一个类,其内部有一个成员IUnknown类型的指针,该类重要最关键的重载了->运算符
所以看起来像是指针操作,实际是运算符调用
Release()//一般使用这个
和->Releas()//这个有没有重载我没有试过
实际上,一般使用智能指针,你不需要自己去调用这个,类对象自己会维护计数