我什么时候需要使用cerr?
假设您正在编写一个逐行读取标准输入的程序,并按排序顺序将这些行写入标准输出.假设您的程序采用命令行参数,该参数指示输出是否需要按升序或降序排序.如果最终用户为此参数传递了无效值,则需要向控制台输出消息“Invalid flag”.将它打印到cout是不正确的,因为cout可能被重定向到文件,因此用户不会看到它.在这种情况下,正确的解决方案是将此消息写入cerr.