C++中定义类的成员函数,但在引用的时候不知道哪里出了问题
//输出有问题,但我没有找到
#include<iostream>
using namespace std;
#include<string.h>
class Cbook //声明类Cbook 均应以C开头
{
private: //下面的为私有数据
char * m_pczName;
int m_nPages;
int m_nEdition;
public: //下面的为公有数据和函数
void GetBookName(char *pName);
int GetTotalPages();
int GetBookEdition();
private: //下面的为私有数据和函数
void SetBookName(char *pName);
void SetTotalPages(int nPages);
void SetBookEdition(int nEdition);
public: //下面的为公有数据和函数
Cbook();
} ;
void Cbook::GetBookName(char *pName) //定义成员函数
{
strcpy(pName,m_pczName);
}
int Cbook::GetBookEdition() //定义成员函数
{
return m_nEdition;
}
void Cbook::SetBookName(char *pName) //定义成员函数
{
if(m_pczName!=0)
delete[] m_pczName; //如果已经有了旧名字,删除它,然后重新命名
m_pczName=new char[strlen(pName)+1];//重新分配存储空间
strcpy(m_pczName,pName); //复制字符串
}
void Cbook::SetTotalPages(int nPages) //定义成员函数
{
m_nPages=nPages;
}
void Cbook::SetBookEdition(int nEdition)//定义成员函数
{
m_nEdition=nEdition;
}
int main()
{
Cbook op1;
int i;
i=op1.GetBookEdition();
cout<<i<<endl;
}
(.text+0xf4): undefined reference to `Cbook::Cbook()'
[Error] ld returned 1 exit status
main()函数中,我试过了在Cbook op1后面加括号,但没能实现
能正常运行就行