在vs中编译代码有许多需要注意的地方,其中头文件的问题时最麻烦的,同时它也是最需要“细腻”的地方。
下面就常见的一些问题与大家分享。
编译环境:vs2015
编写语言:c++
在vs2015中编写如下代码:
输入年龄然后打印输出。
但是怎么会这样呢?
如果您遇到了这个问题不要捉急!
下面就是解决方法:
没错,就是头文件的顺序。
我把stafx.h这个头文件放在了前面。为什么?
这是因为在vs中会进行程序的框架扩展(有关这个问题请看我的另一篇又跟头文件的文章)http://blog.csdn.net/schopenhauerzhang/article/details/51113699
在这里不多说了。
那么怎么回事呢?因为把iostream放在后面是正确的程序运行顺序。当vs运行时,他会先读stdafx.h这个头文件,然后再运行iostream这个头文件,否则他就只运行stdafx.h这个头文件了,不运行iostream这句代码了。(这里只是稍加解释,没有用标准语言,预编译指令)
所以提示cout cin endl为未声明的标识符。
还有cout 和cin以及endl都是c++的指令(我认为的,没有用标准语言),所以要小心了。
改了头文件的顺序当然就可以运行了。
这个问题在vc6.0中是没有的,从理论上说只要不是vs这样要用stdafx.h头文件的话,都不用在意顺序的。至少在vc6.0和codeblock和dev上是不用的。(已经测试过了)
因为qt,本人没有使用,大家可以试一试看看能不能行,欢迎分享!有关头文件的问题欢迎访问我的博客http://blog.csdn.net/schopenhauerzhang/article/details/51113699
也欢迎给我留言或者发邮件!1099723261@qq.com
有关输入输出流和头文件的问题(在vs中)
最新推荐文章于 2023-04-11 18:56:10 发布