Re: [问题] 避免“变量名称”冲突“class名称”

楼主: descent (“雄辩是银,沉默是金”)   2017-05-12 16:37:57
这个问题很诡异
typedef int now_time;
int main(int argc, char *argv[])
{
int now_time;
now_time my_time;
return 0;
}
[email protected]/*
作者: uranusjr (←這人是超級笨蛋)   2017-05-12 16:57:00
不奇怪吧, 就定义覆蓋的问题啊 (合不合标准我没查)
楼主: descent (“雄辩是银,沉默是金”)   2017-05-12 17:08:00
一个是变量名称, 一个是变量型别的名称, 为什么会冲突?
作者: uranusjr (←這人是超級笨蛋)   2017-05-12 17:22:00
不太一样, char 是保留字, 所以上面会 error, 但自定义型别和变量都是 identifier, 是可以覆蓋的是在你真的使用那个 identifier (例如 cout) 才会去检查那个 identifier 代表什么, 这时候才会出错
作者: AstralBrain   2017-05-12 18:15:00
http://en.cppreference.com/w/cpp/language/lookup看 "type/non-type hiding" 那段
继续阅读

Links booklink

Contact Us: admin [ a t ] ucptt.com