'从some_type **到const some_type **的转换无效' [英] 'Invalid conversion from some_type** to const some_type**'
问题描述
我有一个函数需要 const some_type **
作为参数( some_type
并且该函数需要一个指向这种类型的数组的指针)。我声明了一个局部变量类型 some_type *
,并初始化它。然后我调用函数 f(& some_array)
,编译器(gcc)说:
I've got a function that requires const some_type**
as an argument (some_type
is a struct, and the function needs a pointer to an array of this type). I declared a local variable of type some_type*
, and initialized it. Then I call the function as f(&some_array)
, and the compiler (gcc) says:
error: invalid conversion from ‘some_type**’ to ‘const some_type**’
$ b b
这里有什么问题?为什么我无法将变量转换为const?
What's the problem here? Why can't I convert a variable to const?
推荐答案
请参阅:为什么我不能传递 char **
到一个函数,期望一个 const char **
? 来自comp.lang.c常见问题解答。
See: Why can't I pass a char **
to a function which expects a const char **
? from the comp.lang.c FAQ.
这篇关于'从some_type **到const some_type **的转换无效'的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!