【发布时间】:2018-10-30 18:54:06
【问题描述】:
我想编写通用函数(例如,获取void** 类型的数组并对这个数组做一些事情的函数)这样这个函数将获取元素的类型(在示例中,它将是数组中任何元素的类型)作为参数。
我可以用 c 做吗?
例如:
我想编写一个函数来获取数组(void** 的类型)并以某种随机方式初始化这个数组。
“以某种随机方式”我的意思是,例如作为参数获取的函数:数组(类型为void**),数组中任何元素的类型,索引(在int) 的类型并初始化此单元格。
【问题讨论】:
-
我想用 c 编写泛型函数,例如,获取数组的函数(类型为 void**)并对这个数组做一些事情。我想知道我是否可以将此数组中任何元素的类型(例如)传递给函数..
-
宏可以(某种程度上)做到这一点。 C 在 C++ 中没有模板之类的东西
-
在一定程度上,你可以使用 C11 的
_Generic来编写泛型函数,但是你几乎必须事先知道所有你想要的类型泛化
标签: c arrays types generic-programming