conio.h头文件中定义的两个函数之间有什么区别 -
getch()和_getch().
decalaration有区别吗?或者仅仅因为更新的标准而有所不同?
这是几年前微软决定更严格地解释C++标准的一部分.它表示全局命名空间中以下划线开头的所有名称都保留供实现使用.这意味着它getch不是保留名称,而是_getch.
所以微软认为"这个函数,以及所有其他POSIX函数,都是由实现提供的.让我们通过预先设置下划线来重命名它们,这样我们就可以将它保留在全局命名空间的"保留"部分中.方式,用户提供的功能没有名称冲突的可能性.
你可以说这些都是好意,或者说这只是打破POSIX代码的邪恶尝试.我不知道他们的真正动机是什么,但最终的结果是根据微软的说法,getch已弃用,你应该使用_getch.