C++如何检测未定义但已声明的标识符?

//如何防止含有未定义但已声明标识符的程序编译通过?或者如何发现有声明没定义的标识符?//有些时候一个标识符已经声明,但暂时还用不到,这样就会成功生成,链接阶段也不会报错... //如何防止含有未定义但已声明标识符的程序编译通过?或者如何发现有声明没定义的标识符?
//有些时候一个标识符已经声明,但暂时还用不到,这样就会成功生成,链接阶段也不会报错.
//以下程序的标识符i暂时用不到,但是这段代码却能成功生成,连接目标程序?
#include <iostream>
#include <conio.h>
using namespace std;
extern int i;//非法声明,不存在定义,但因为没有使用,链接阶段也成功,程序被成功生成且可以运行
int main()
{
getch();
return 0;
}
展开
 我来答
charleszhangji
2012-07-01 · TA获得超过4554个赞
知道小有建树答主
回答量:887
采纳率:0%
帮助的人:962万
展开全部
通常编译器会对声明但没有被引用或定义的标识符报告一个warning,所以要注意编译器的报告,对自己程序要求严格一点,尽量做到0 error, 0 warning。
此外还可以借助于其他的静态代码检查工具,比如cppcheck,它可以对一些编译器不检查的问题如代码风格、性能瓶颈等问题给出警告,给出优化提示。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式