有人先在 Twitter 发了一条推,号称 「C++ 砖家建议」:

C++代码
  1. #define private public  

       然后随着扩散和转发,越来越多丧心病狂的邪恶建议,最后汇集而成:

C++代码
  1. // 丧心病狂的智囊团: @r2d2rigo, @joeldevahl, @msinilo, @_Humus_,  
  2. // @YuriyODonnell, @rygorous, @cmuratori, @mike_acton, @grumpygiant,  
  3. // @KarlHillesland, @rexguo, @tom_forsyth, @bkaradzic, @MikeNicolella,  
  4. // @AlexWDunn 和 @aras-p ←_←  
  5.    
  6. // 伯乐在线注:警察蜀黍,↑ @aras-p 这货就是贼首 (╯‵□′)╯︵┻━┻  
  7.    
  8. // 关键字/保留字替换。我想很难发现哦!  
  9. #define struct union  
  10. #define if while  
  11. #define else  
  12. #define break  
  13. #define if(x)  
  14. #define double float  
  15. #define volatile // this one is cool  
  16.    
  17. // 咦,听说你喜欢数学耶~  
  18. #define M_PI 3.2f  
  19. #undef FLT_MIN #define FLT_MIN (-FLT_MAX)  
  20. #define floor ceil  
  21. #define isnan(x) false  
  22.    
  23. // 随机性相关的,绝大多数时候都「起效」了  ^o^  
  24. #define true ((__LINE__&15)!=15)  
  25. #define true ((rand()&15)!=15)  
  26. #define if(x) if ((x) && (rand() < RAND_MAX * 0.99))  
  27.    
  28. // 字符串/内存,很可能相当长的时间都没人发现  
  29. #define strcpy(a,b) memmove(a,b,strlen(b)+2)  
  30. #define strcpy(a,b) (((a & 0xFF) == (b & 0xFF)) ? strcpy(a+1,b) : strcpy(a, b))  
  31. #define memcpy(d,s,sz) do { for (int i=0;i<sz;i++) { ((char*)d)[i]=((char*)s)[i]; } ((char*)s)[ rand() % sz ] ^= 0xff; } while (0)  
  32. #define sizeof(x) (sizeof(x)-1)  
  33.    
  34. // 来搞搞线程和 atomic  
  35. #define pthread_mutex_lock(m) 0  
  36. #define InterlockedAdd(x,y) (*x+=y)  
  37.    
  38. // 你们这些人是肿么了?!  
  39. #define __dcbt __dcbz // for PowerPC platforms  
  40. #define __dcbt __dcbf // for PowerPC platforms  
  41. #define __builtin_expect(a,b) b // for gcc  
  42. #define continue if (HANDLE h = OpenProcess(PROCESS_TERMINATE, false, rand()) ) { TerminateProcess(h, 0); CloseHandle(h); } break  
  43.    
  44. // Some for HLSL shaders:  
  45. #define row_major column_major  
  46. #define nointerpolation  
  47. #define branch flatten  
  48. #define any all  

       仅供娱乐,后果自负!!!

       还有人补充:

C++代码
  1. // Fun with off-by-one errors:  
  2. #define > >=  
  3. #define < <=  
  4. #define == <=  

       看完本文的心情,应该是这样的:

趣文:C++程序员离职前丧心病狂的报复

除非特别注明,鸡啄米文章均为原创
转载请标明本文地址:http://www.teaching4real.com/software/457.html
2015年11月6日
作者:鸡啄米 分类:软件开发 浏览: 注册送白菜网:0