+ -
当前位置:首页 → 问答吧 → 获取CListBox控件中的数据连接报错

获取CListBox控件中的数据连接报错

时间:2011-12-13

来源:互联网

我最近用vs2008做了一个界面,其中有一个列表框,在列表中添加若干数据,现选中其中一行点击按钮获取当前行的数据,我自己照参考书写的一段代码:
C/C++ code
ProductListB.DeleteString(nIndex);//ProductListB为当前列表
        Product pro;//Product 列表显示数据时用的类
        pro=*(Product *)ProductListB.GetItemDataPtr(nIndex);//获取第nIndex行的数据
        CString str;
        str=pro.productnum;//获取其中的一项
        AfxMessageBox(str);

但是我这段代码在连接时报错:
ShoesMaterialListDlg.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall Product::~Product(void)" (??1Product@@QAE@XZ),该符号在函数 "public: void __thiscall CShoesMaterialListDlg::OnBnClickedButtonDeletepB(void)" (?OnBnClickedButtonDeletepB@CShoesMaterialListDlg@@QAEXXZ) 中被引用
1>ShoesMaterialListDlg.obj : error LNK2019: 无法解析的外部符号 "public: __thiscall Product::Product(void)" (??0Product@@QAE@XZ),该符号在函数 "public: void __thiscall CShoesMaterialListDlg::OnBnClickedButtonDeletepB(void)" (?OnBnClickedButtonDeletepB@CShoesMaterialListDlg@@QAEXXZ) 中被引用
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
初步判断是“pro=*(Product *)ProductListB.GetItemDataPtr(nIndex);”引起的,请高人指点!!!!

作者: xiaohongmaoUFO   发布时间: 2011-12-13

。。这个还不太清楚。友情帮顶一下。。

作者: lumingming   发布时间: 2011-12-14

是不是报错中还提到一项是无法解析的外部符合productnum...
如果是这样的话那可以断定你没有把类Product相关的.h和.cpp文件加到你的工程中,
而你现在刚好用到该类的这几个方法和属性:构造函数,析构函数,productnum变量.
你没有用到Product类中的其他方法或者属性则不会报错.

作者: yuucyf   发布时间: 2011-12-14

你的cpp文件是不是不在工程里?

作者: sdl2005lyx   发布时间: 2011-12-14

pro=(Product *)ProductListB.GetItemDataPtr(nIndex);//获取第nIndex行的数据

作者: shen_wei   发布时间: 2011-12-14

你有关Product的cpp文件没有包含在工程中, 并且Product pro应定义成指针

作者: hhyhw2001   发布时间: 2011-12-14

。。。明显是Product类的.h和CPP文件没有加到过程里面

作者: zhaoze87   发布时间: 2011-12-14

引用 2 楼 yuucyf 的回复:

是不是报错中还提到一项是无法解析的外部符合productnum...
如果是这样的话那可以断定你没有把类Product相关的.h和.cpp文件加到你的工程中,
而你现在刚好用到该类的这几个方法和属性:构造函数,析构函数,productnum变量.
你没有用到Product类中的其他方法或者属性则不会报错.

我明白您的意思了!但是我的做法是在***Dlg.h文件的class C***Dlg:public CDialog语句前添加的该Product类也就是说没有.h和.cpp文件,这种做法不行吗。(参考例子:visualC++ 实用教程 第三版 电子工业出版社 郑阿奇主编 实例:p444 实验10),非常感谢您的解答

作者: xiaohongmaoUFO   发布时间: 2011-12-14