VC6不支持namespace::union/struct/enum::member的引用方式

将C++工程从VS2012迁移到VS6,其中使用了GDI+,编译时爆粗!


error C2039: 'Ok' : is not a member of 'Status'

反复确认无误, 想来想去也就一个原因, 就是语法

源码如下:


			if(Gdiplus::GdiplusStartup(&this->m_gdiplusToken, &Gdipsi, NULL) != Gdiplus::Status::Ok)
			{
				...
			}

在VS2012下无任何错误或警告, 在VS6下死活不认这个成员

修改为:


			if(Gdiplus::GdiplusStartup(&this->m_gdiplusToken, &Gdipsi, NULL) != Gdiplus::Ok)
			{
				...
			}

即可通过编译, 很明显VS2012的方式更加舒服确切, 可惜为了让老态龙钟的XP不安装运行库可运行产品, 该纠结的地方还得纠结.

其他类似的C2039如法炮制即可, 为了可读性, ::Status就用作注释吧


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值