读书人

请问怎么使用程序块中定义的变量

发布时间: 2012-10-18 13:46:55 作者: rapoo

请教如何使用程序块中定义的变量?
比如if语句块
if(判断s是否为a类型){
double *r;
}else{
bool *r;
}
接下来要用到r,可以把bool类型的*r强制转换为double;
但是编译器会提示r没有定义,我该怎样才能直接用r呢

加static好像不行吧
小弟新手见笑了

[解决办法]
程序块中定义的变量只能在程序块中使用

单就楼主这个问题来看,没戏
C/C++是静态编译语言,变量的类型在编译期就已经确定,不可能做到在运行时更改类型

如果用void*来保存地址,再设一个变量用来表示类型,运行时根据后者来强制转换前者,也不是不可以,但本质上这其实就相当于延长了if的程序块,你还不如直接把if那两个程序块写长点


[解决办法]
生命周期不一样

读书人网 >C++

热点推荐