首页 > 代码库 > c++趣味之变量名,颠覆所有教科书的VisualStudio

c++趣味之变量名,颠覆所有教科书的VisualStudio

GCC不参与这次的趣味。

所有的教程都会告诉你,c++的变量名,类名,函数名都应该是字字母或下划线开头的字母、数字、下划线组合,像这样:

int _abc123;

实际上,VisualStudio并不遵守这个规范,而是更宽泛,这些都可以:

#include <stdio.h>
#include <tchar.h>
#define 如果 if
#define 打印 printf
#define 返回 return
#define 开始 {
#define 结束 }
#define 主函数 _tmain
#define 整数 int
//纯中文C++程序设计
整数 主函数(整数 参数, _TCHAR* argv[])
开始
 如果(1>0)打印("1");
 打印("Fyter 打印%d", 参数);
 返回 0;
结束

这是一个可以在VS下编译通过的程序。

所以对于这样的编译器,变量名应该是:

不允许非可视字符,像tab,\n,\r...

不允许运算符,像=-+*/...

不允许关键字,像const,int,class...

以外的任意字符

 

c++趣味之变量名,颠覆所有教科书的VisualStudio