查看了其他几个问题和答案,但我似乎无法弄清楚如何将它应用于我的情况。初始化结构的Const变量
这里是我的设置:
typdef struct sensor {
const unsigned char pin;
//otherVariables
}Sensor;
Sensor *left = new Sensor();
void initStruct() {
left->pin = 1; //illegal initialization
}
从我一直在读我下面的代码似乎是一个可行的解决方案,但我不能靠近我的编译器,所以我无法测试。这看起来不错吗?如果它是错误的,你能提供一个解决方案吗?
void initStruct() {
left->pin = malloc(sizeOf char);
left->pin = 1;
}
您如何提供编译器的输出? – Melon
@Melon:正确阅读问题.. !!! –
'left-> pin = malloc(sizeOf char);'什么?你只能分配内存给指针,而不是'const unsigned char'。 –