2012-09-22 38 views
-1

例如:

int $a = 1; 
int $$a = 2; 

为什么允许这样做?

我与Visual Studio 2010

+0

有没有你认为不应该被允许的情况? – Vikdor

+0

未来,请遵循以下指南:标题应该简短并且描述性,但不应该成为问题。尝试制定完整的句子。 – stefan

回答

3

从C++标准工作,2.11标识符:

identifier: 
    identifier-nondigit 
    identifier identifier-nondigit 
    identifier digit 
identifier-nondigit: 
    nondigit 
    universal-character-name 
    other implementation-defined characters 

见的最后一行,其中明确允许实施具有实现定义的非数字字符的标识符。

1

在C++中,$(例如bash/Perl)没有什么特殊含义,并且C++标准没有任何限制。 $就像任何其他标识符一样。但看起来很尴尬int $;

+2

嗯,它的特殊之处在于C++标准并不保证使用包含'$'的名称不会导致格式不正确的程序。 – avakar

相关问题