struct的初始化

include_zhao 2018-03-14 03:45:35
struct WindowsParams {
DWORD pidOwner = NULL;
wstring wndClassName = L"";
wstring wndName = L"";
RECT pos = { 0, 0, 0, 0 };
POINT res = { 0, 0 };
float percentAllScreens = 0.0f;
float percentMainScreen = 0.0f;
DWORD style = NULL;
DWORD styleEx = NULL;
bool satisfyAllCriteria = false;
vector<HWND> hwnds;
};

阅读前人的源码,发现struct直接初始化赋值,这怎么可能呢?我编译的时候报错
struct定义的时候不是不能初始化吗?
前人写的初始化,怎么通过编译的呢?
难道是编译器的问题吗?vs2010编译器无法通过

...全文
211 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
include_zhao 2018-03-14
  • 打赏
  • 举报
回复
引用 1 楼 paschen 的回复:
这是C++11添加的新语法,需要支持C++11编译器才行
安装上了TDM_GCC,,可以编译了,谢谢
paschen 版主 2018-03-14
  • 打赏
  • 举报
回复
引用 4 楼 include_zhao的回复:
[quote=引用 1 楼 paschen 的回复:] 这是C++11添加的新语法,需要支持C++11编译器才行
GCC编译器支持吧? vs太大了,,不喜欢[/quote] 使用最新的编译器一般都是支持的,VS2015及以上版本VS也是支持的
幻夢之葉 2018-03-14
  • 打赏
  • 举报
回复
引用 3 楼 zhaokino 的回复:
[quote=引用 2 楼 jianwen0529 的回复:] C++11增加的类内初始化特性,你在VS2013或者以上版本均可以! VS 2010的时候,C++ 11的标准还没定稿呢
我用的CB,vs2010的编译器,换成GCC编译器,就可以了吗?[/quote] 可以的,只要是支持C++11的编译器基本上都支持类内初始化这个特性 IDE的话,codeblock,dev C++都可行
include_zhao 2018-03-14
  • 打赏
  • 举报
回复
引用 1 楼 paschen 的回复:
这是C++11添加的新语法,需要支持C++11编译器才行
GCC编译器支持吧? vs太大了,,不喜欢
include_zhao 2018-03-14
  • 打赏
  • 举报
回复
引用 2 楼 jianwen0529 的回复:
C++11增加的类内初始化特性,你在VS2013或者以上版本均可以! VS 2010的时候,C++ 11的标准还没定稿呢
我用的CB,vs2010的编译器,换成GCC编译器,就可以了吗?
幻夢之葉 2018-03-14
  • 打赏
  • 举报
回复
C++11增加的类内初始化特性,你在VS2013或者以上版本均可以! VS 2010的时候,C++ 11的标准还没定稿呢
paschen 版主 2018-03-14
  • 打赏
  • 举报
回复
这是C++11添加的新语法,需要支持C++11编译器才行

64,637

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧