给定C函数:
void f(T x, T y) {
x = y;
}
我想确保T分配的所有实例都会失败。到目前为止,我所拥有的最佳解决方案是:
#define T const void *
有更好的解决方案吗? (理想情况下,我希望将T定义为某种不可赋值的不透明记录指针类型)。
答案 0 :(得分:3)
typedef
更适合此处。
对于不可变数据:typedef const void * T;
对于不可变指针:typedef void * const T;
答案 1 :(得分:0)
typedef const int T
或
typedef void * const T
可以防止分配。