-1

可能重复:
你能用 C 编写面向对象的代码吗?

C 是否支持没有多态性、继承等的简单类?

我只需要定义类和方法。

4

3 回答 3

6

C 本身没有类概念。

但是,可以实现类似的东西:

struct stuff {
    void (*do_it)(void);
    void (*close)(void);
};

struct stuff new(void) {
    struct stuff ret;
    ret.do_it = ...;
    ret.close = ...;
    return ret;
}


int main() {
    struct stuff s = new();
    s.do_it();
    s.close();
}
于 2012-12-07T14:37:14.253 回答
5

您可以使用结构并在其中存储函数指针。

于 2012-12-07T14:35:52.163 回答
2

C不是面向对象的。所以不行。但它支持结构

于 2012-12-07T14:36:03.973 回答