c ++变量名称中的北欧字符?

时间:2018-10-16 06:11:23

标签: c++ c++11 visual-c++ g++ clang++

是否可以在类名和变量名中使用北欧字母的字符在c ++中进行编程? (具体是:æ,ø和å)。

示例:

auto føø = 2;

我正在使用GCC> 6,似乎不支持它。还有其他支持这些字符的编译器吗?

(仅供参考:我已经做过这件事,但是空着出来)。

1 个答案:

答案 0 :(得分:1)

根据this

  

命名变量规则

     
      
  1. 变量名称不能是C ++关键字。例如int不能是   变量名称,因为它是C ++关键字。
  2.   
  3. 变量名称必须以字母(A-Z和a-z)开头或   下划线(_)符号。例如var,X,_name等有效   变量名称,但1a,$ age等是无效的变量名称。
  4.   
  5. 变量名称可以包含字母(A-Z和a-z),下划线(_),   数字(0-9),但不能包含其他符号,例如%,&,@等。   例如a_01,findSum是有效的变量名称,但name&,calc%不是   允许在C ++中使用。
  6.   

所以回答您的问题:

  

是否可以使用来自   类和变量名中的北欧字母? (具体是:æ,ø和   å)。

它不是便携式的,因为标准不允许它;当然,这取决于单个编译器是否允许它。通常,通常使用宏代替,就像这样:

#define føø my_foo

然后再做

auto føø = 2;