在c++中如何在类外定义函数
classeightNum{public:typedefstructnumNode{intcode[3][3];structnumNode*parent;structnu...
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上是报错的求改正!! 展开
{
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上是报错的求改正!! 展开
2015-08-08 · 知道合伙人数码行家
关注
展开全部
在类的外面进行函数定义。
如: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; //定义两个类对象
注意:在类体中直接定义函数时,不需要在函数名前面加上类名,因为函数属于哪一个类是不言而喻的。
如: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; //定义两个类对象
注意:在类体中直接定义函数时,不需要在函数名前面加上类名,因为函数属于哪一个类是不言而喻的。
2009-04-01
展开全部
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;
}
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;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询