每当调试的时候,监视如:pRecordset->GetCollect("username") 这样的语句。
就会提示:CXX0063: 错误: 重载运算符 -> 不支持。
请各位给我解释一下呗。
让我这几天能睡好觉。谢谢!!!

解决方案 »

  1.   

    调试? 你的代码能编译通过吗  
    应该是你的pRecordset无效吧
      

  2.   

    首先确定你的pRecordset是否是个指针,然后再看pRecordset是否为NULL~~
      

  3.   

    编译成功吗?
    pRecordset值多少?
      

  4.   

    刚看到,和(佳宁)问的一样,呵呵还有救是 pRecordset是如何定义的,贴出来
      

  5.   

    1.pRecordset是一个智能指针?因为智能指针准确说它不是一个正常指针,它是一个对象,它的操作符重载->。
    对于操作符重载,C++的watch通通不买单
    2.GetCollect("username"),还带函数!!!,C#是很可能是没问题的,C++没戏。native 代码,不允许这么干!!!!
    千万别以C#的调试方式来想C++!!!
      

  6.   

    第一:pRecordset肯定运行起来没问题,程序也都能跑通,就是我很疑惑为什么调试时出现那个问题。
    第二:楼上的基本回答了我的问题。谢谢。但是能不能告诉我,是不是就无法监视智能指针了呢?带函数是不是也无法再监视或者命令窗口用了呢?本人是VB.net转过来的。呵呵。
      

  7.   

    给大伙看看你的 pRecordset是如何定义 的啊?
      

  8.   

    _RecordsetPtr pRecordset; pConnection.CreateInstance("ADODB.Connection");
      

  9.   

    _RecordsetPtr pRecordset;pRecordset.CreateInstance("ADODB.Recordset");
      

  10.   

    username要与Access中列表名一样
    CString str=(LPCTSTR)(_bstr_t)pRecordset->GetCollect((LPCTSTR)"username");
      

  11.   

    改一下“username”这个名字,好像有个专门的字段是这个,冲突了?
      

  12.   

    我看又的内存对象也是可以访问的。比如:File *file;
    这个file变量就可以访问。还有,Recordset内存地址不是已知的么?