【发布时间】:2015-07-10 22:48:17
【问题描述】:
这可能是一个愚蠢的问题。我正在修改别人开发的代码。我需要根据逻辑变量ThreeDim 来具体化一些字符数组的值。我正在尝试这样做但没有成功。
int VarNumber = ThreeDim==1 ? 3 : 2;
const char* VarList [] = ThreeDim==1 ? {"X","Y","Z"} : {"X","Y"};
但是编译器给了我类似的错误
error: expected ‘;’ before ‘}’ token
error: initializer fails to determine size of ‘VarList’
VarList 需要为 const char* 由于下游要求。它的大小应该是VarNumber。谢谢
【问题讨论】:
标签: c++ c ternary-operator