我在QT下做了一个跨平台(Linux和Win7)的C++代码工程,这个工程是一个底层引擎库,有外部接口。
但在我调用这个外部接口申请空间之后,给这个空间赋值时,却提示错误(Win7下提示,Linux下正常)。
代码如下:
VBU* vbu = ReqBuffers(2);// ReqBuffers是个接口,用于申请2个VBU结构体空间,并返回申请后的指针。
*vbu = {0.f, 1.f, 2.3f, 0.f};
*(++vbu) = {2.f, 5.f, 3.f, 1.f};
提示错误如下(win7下):
C2059:语法错误: "{"
C2143:语法错误: 缺少";" (在"{"的前面)
C2143:语法错误: 缺少";" (在"}"的前面)
提问:
1.我想知道这种赋值方法,是不是c++11的赋值风格?
2.为什么在Linux下好用,换到Win7下就不好用了?