void Get(CRecrodset* pRecordset)
{
    CDBVariant *dbVariant = new CDBVariant[pRecordset->GetODBCFieldCount()];
    delete[] dbVariant;
}在delete那句时出错,不知怎么办

解决方案 »

  1.   

    好像直接用
    CDBVariant *p = new CDBVariant[10];
    delete[] dbVariant;
    也不行
      

  2.   

    但是如果有这样就行, 真奇怪
    class CMyDBVariant : public CDBVariant
    {
    };CMyDBVariant *p = new CMyDBVariant [10];
    delete[] dbVariant;
      

  3.   

    CDBVariant *p[];
    for (int i=0;i<10;i++)
    {
      p[i] = new CDBVariant;
     }
    delete[] dbVariant;
      

  4.   

    sorry,应该是:
    CDBVariant *p[];
    for (int i=0;i<10;i++)
    {
      p[i] = new CDBVariant[i];
     }
    delete[] dbVariant;
      

  5.   

    如果这样,
    那要声明一个字符串呢,用char *p = new char[len];
    如果用
    char *p[];
    for (int i=0; i<len; i++)
    {
        p[i] = new char;
    }
    那我不如死掉算了