typedef 在类里面定义一个类型时的问题。
2010-12-27 12:32
369 查看
博客转移至:http://kulv.sinaapp.com/?p=28
class Test
{
public:
typedef int ( func )( void );//定义一个函数指针类型,
int print(void) { return 0 ;} ;//下面的错误中,
//如果把print函数定义为friend 或者static的,就可以了。但是无法满足我的要求
func p ;//声明一个函数指针
void init() {
p = print ;//在这里给函数指针变量p赋值,赋的是本类的print函数地址。
//但是这句总是出错
}
};
int main(){
cout <<"why"<< endl ;
return 0 ;
}
上面有错,改正如下:
1. static int print(void) { return 0 ;} ;//
2. friend int print(void) { return 0 ;} ;//
3. class Test
{
public:
typedef int ( Test::*func )( void );//定义一个函数指针类型,
int print(void) { return 0 ;} ;//下面的错误中,
//如果把print函数定义为friend 或者static的,就可以了。但是无法满足我的要求
func p ;//声明一个函数指针
void init() {
p = print ;//在这里给函数指针变量p赋值,赋的是本类的print函数地址。
//但是这句总是出错
}
};
int main(){
cout <<"why"<< endl ;
return 0 ;
}
class Test
{
public:
typedef int ( func )( void );//定义一个函数指针类型,
int print(void) { return 0 ;} ;//下面的错误中,
//如果把print函数定义为friend 或者static的,就可以了。但是无法满足我的要求
func p ;//声明一个函数指针
void init() {
p = print ;//在这里给函数指针变量p赋值,赋的是本类的print函数地址。
//但是这句总是出错
}
};
int main(){
cout <<"why"<< endl ;
return 0 ;
}
上面有错,改正如下:
1. static int print(void) { return 0 ;} ;//
2. friend int print(void) { return 0 ;} ;//
3. class Test
{
public:
typedef int ( Test::*func )( void );//定义一个函数指针类型,
int print(void) { return 0 ;} ;//下面的错误中,
//如果把print函数定义为friend 或者static的,就可以了。但是无法满足我的要求
func p ;//声明一个函数指针
void init() {
p = print ;//在这里给函数指针变量p赋值,赋的是本类的print函数地址。
//但是这句总是出错
}
};
int main(){
cout <<"why"<< endl ;
return 0 ;
}
相关文章推荐
- 关于c++中类型定义typedef和类模板能否共用问题
- ORACLE 中 VARCHAR2 类型的字段长度是按照 byte 来定义的 一个容易被忽略的问题
- 定义一个空类型,里面没有任何成员变量和成员函数。对该类型求sizeof 结果?
- C语言中利用typedef定义一个数组类型
- 学习类,笔记!关于一个函数里面定义多个类以及相互访问的问题
- IDE使用问题:vc2003中类型无法转到声明和定义,按F12提示未定义的符号(CSDN一个帖子)
- 使用typedef语句定义数组类型
- 类型转换的一个问题
- 使用typedef语句定义数组类型
- java工程项目里,在一个包里面,不能出现同名的类名,这问题是刚接触java才会遇到的,特别是新手一般都没有建立包,而是使用默认的,易出现同名的类名,导致eclipse提示错误
- 经常在eclipse中导入web项目时,出现转不了项目类型的问题,导入后就是一个java项目。
- 用typedef定义类型的总结分析
- 如何用python的装饰器定义一个像C++一样的强类型函数
- android自己定义Application全局变量不能类型转换的问题
- 在一个session 里面加load dll问题
- 一个简单的static类型的初始化问题
- ADO.NET Entity Framework如何:通过每种类型一个表继承以定义模型(实体框架)
- to_number与oracle 里面number类型易出错的问题
- Hibernate查询,返回new对象(注意这个新定义的类要有构造函数),使用sql带条件分页查询并且把结果显示到一个对象的集里面的解决方案
- ThinkPHP里面Model的数据类型问题