ansi C中的模板?

时间:2012-02-28 18:10:28

标签: c templates

如何使用其他类型的数据创建函数(某些结构或某些结构)?在C ++中存在模板,但在C?

我听说无效*,但我不知道它是否有效。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

嗯,使用void * 的方法 。您可能还需要使用函数指针,例如,如果您需要比较通用值。

另一种方法是使用xmacros,但这通常更多地用于减少非常相似结构的代码重复。

答案 1 :(得分:-1)

void *是C中的解决方案,因为任何指针都与sizeof()具有相同的void *。当然,你没有类型的安全性,但是你可以用C来获得一个很好的抽象。此外,你可以看看stdarg.h和可变函数,但同样,你应该跟踪你自己的内容。这样做,因为编译器不会帮你一点。