-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 に答える