在c++中如何在类外定义函数

来源:百度知道 编辑:UC知道 时间:2024/06/22 22:02:26
class eightNum
{
public:

typedef struct numNode {

int code[3][3];

struct numNode * parent;
struct numNode * next;
struct numNode * next1;
}numNode;
numNode *getfirst(numNode * open);定义一个返回numNode指针类型的函数
}

在类外定义函数
numNode * eightNum::getfirst(numNode * open)
{
return open->next;
}
这么定义在vc上是报错的求改正!!

typedef struct numNode {

int code[3][3];

struct numNode * parent;
struct numNode * next;
struct numNode * next1;
}numNode;

把这一段放在类定义的外面,否则,类外定义的函数找不到nodeNum类型的定义,即改为如下:

typedef struct numNode {

int code[3][3];

struct numNode * parent;
struct numNode * next;
struct numNode * next1;
}numNode;

class eightNum
{
public:

numNode *getfirst(numNode * open);
} ;

numNode *eightNum::getfirst(numNode * open)
{
return open->next;
}

在类的外面进行函数定义。
如:class Student{public : void display( ); //公用成员函数原型声明private : int num; string name; char sex; //以上3行是私有数据成员};void Student::display( )//在类外定义display类函数{ cout<<"num:"<<num<<endl; cout<<"name:"<<name<<endl; cout<<"sex:"<<sex<<endl;}Student stud1,stud2; //定义两个类对象
注意:在类体中直接定义函数时,不需要