yqq19851985 2017-11-27 08:02 采纳率: 0%
浏览 2957

QT下编写跨平台C++代码时的结构体赋值(c++11)

我在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下就不好用了?

  • 写回答

1条回答

  • oyljerry 2017-11-27 08:58
    关注

    Win7下,要看你用的编译器是否支持这种C++11的语法,一般VS2017是目前支持最好的

    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)