读书人

C语言中的struct会添加函数吗

发布时间: 2013-09-28 10:01:20 作者: rapoo

C语言中的struct能添加函数吗?
c++中的struct相比于c语言中的struct,前者是不是添加了很多东东,包括可以再结构体中添加函数、具有继承性etc
[解决办法]
C++中的struct≈class
为什么是约等于呢,因为他们只有一点不同:
struct中的默认成员属性是public的。
class中的默认成员属性是private的。

仅此。
[解决办法]
c语言里不能直接定义函数,倒可以用函数指针

#include <stdio.h>


typedef struct _test
{
void (*pFunction)();
}STest;

void display()
{
printf("hello function\n");
}


void main(void)
{
STest test;
test.pFunction = display;

test.pFunction();
}

[解决办法]
不能,不过你想实现的话,可以用只想函数的指针来调用函数。
但在struct里面不能有函数。

读书人网 >C语言

热点推荐