音频应用   音频插件联盟,正版插件,欢迎大家选择!

 找回密码
 快速注册

QQ登录

只需一步,快速开始

阅读: 22833|回复: 1

[资讯] VS 2015编译老项目遇到的三个问题的解决方案

[复制链接]

5133

积分

4

听众

768

音贝

音频应用注册会员

Rank: 4Rank: 4

积分
5133
发表于 2010-6-23 | |阅读模式
音频应用公众号资讯免费发布推广
近期将PC机升级为Windows 10,该平台下的IDE升级到VS 2015社区版,编译VS 2012的老项目时出现三个问题:一是C4458警告(声明隐藏了基类成员);二是项目中如使用了第三方静态库(比如cURL),则编译失败;三是使用JUCE类库开发的GUI程序,其界面文字随机性发生变化(比如变细,某些字符和数字显示错误)。解决办法如下:
1. 解决C4458警告很简单,只需将出现警告的变量或对象重命名即可。这些对象基本全部出现在函数作用域内。或者把基类数据成员中的对象或变量重命名(不推荐)。出现这种警告本来是好事,防止派生类无法调用或直接覆盖了基类的某些方法和非private的成员。对C++程序员来说,零警告和零错误总是项目编译的最基本要求,但还是感觉VS 2015有点多此一举,大惊小怪了。微软官方的开发社区曾有人提出了此问题,但微软员工也没给出个所以然……
2. IDE版本升级后,编译老版本项目会出现各种奇葩情况,这个很常见。OSX下的Xcode就经常玩这一手,不过通常解决起来并不麻烦;Windows次之,但是一旦出现就很让人头大;Linux下最罕见,但一旦出现也最容易解决(sudo更新库就是一击必杀的秘籍之一)。最近,我将Windows下的IDE升级为VS 2015后,就遇到了老项目无法编译的情况。问题出在cURL静态库上。不做任何改动,VS 2012编译却很顺利。郁闷了一会,按Linux下解决此类问题的惯例,花了点时间用VS 2015重新配置并编译cURL静态库,再次编译该项目,OK了。这操蛋的微软VS……
3. Windows 10升级后,感觉有进步,特别是界面文字渲染方面,但进步还是太小,太保守了。老掉牙的hint技术和不伦不类的ClearType依然在勉力支撑……这方面,比起OSX和Linux,Windows简直就是一坨shit,即便到了Windows 10,界面文字渲染基本还是老样子(除了微软强制塞给用户的一些新开发的内置程序),多了一个全局缩放的调节项,但是一大批不合格的老程序基本就没法看了,糊成了一坨又一坨…更让人惊诧的是:全局放大后,某些JUCE程序在Windows 10平台下的界面文字莫名其妙会出现变细、字符和数字错误等问题。解决方法:Projucer中,底层图形渲染模块禁用微软的DirectWrite。
本次升级PC机的操作系统和IDE,也不全是失望和烦恼。比如:微软的IDE依然很好用,VS 2015简直好用到了令人发指的地步。再看看可怜的Xcode,真是货比货得扔。
另外,近期开始试用VS Code,这个玩意不错,OSX下跑得也挺畅快。对比之下,我觉得比GitHub的Atom好用。禁不住想,巨无霸VS也能弄个Linux和OSX版就好了。谁说没可能呢?你看MS Office系列都有OSX版了……
欢迎厂家入驻,推文!免费!微信:yinpinyingyong

103

积分

4

听众

40

音贝

音频应用

Rank: 1

积分
103
发表于 2017-8-10 |
分享,谢谢楼主发布啊
欢迎厂家入驻,推文!免费!微信:yinpinyingyong
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

音频应用搜索

小黑屋|手机版|音频应用官网微博|音频招标|音频应用 (鄂ICP备16002437号)

Powered by Audio app

快速回复 返回顶部 返回列表