澳洲有假货么:求叫高手:C语言中结构和类可不可以做函数类型?

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 18:03:59
C语言中结构和类可不可以做函数类型?

如果类作为函数返回类型的话 要求类必须存在引用构造函数和复制构造函数,
比如 如果你用a类作函数返回值就必须要有
class a
{
a(a inp);
a(a &inp);
}
这样当你用return的时候 才能把你的返回值复制给临时变量
结构的负值是按照顺序进行数据拷贝的 当然也可以咯,

不过要注意的是如果结构里有指针的话要加以注意,避免进行野指针的传递

C语言中结构可以做函数类型.
结构做函数类型的意思是函数调用结果,送返一个结构。
结构实质上是由不同类型的数组成的数组,所以结构可以做函数的参数,也可做送返的结果。

例如:
typedef struct Color_Table {
int GC_size;
unsigned char R[0xff];
unsigned char G[0xff];
unsigned char B[0xff];
} Color_Table;

Color_Table ct(Color_Table global_a,Color_Table local_a) { 。。。。。}
上面的函数类型就是结构,根据GIF全局调色盘和当地调色盘计算返回调整后的调色盘。

类不可以做函数类型,因为类不只有“数”,还有许多子程序等别的东西。只有“数”(数,字符,真假)才有类型。

首先纯C中是没有类的。
在C++中,类应该是一个比函数大的概念。
至于结构,如果你说的是C中的结构体的话,那么是不可以做函数类型的。