这个问题已经在这里有了答案:




9年前关闭。






有人告诉我#define不好。好吧,老实说,我不明白为什么它不好。如果它不好,那我还能用其他什么方法呢?

#include <iostream>
#define stop() cin.ignore(numeric_limits<streamsize>::max(), '\n');

最佳答案

#define并不是天生不好的。但是,通常有更好的方法来做您想要的事情。考虑一个inline函数:

inline void stop() {
    cin.ignore(numeric_limits<streamsize>::max(), '\n');
}

(实际上,您甚至不需要inline这样的函数。只需一个普通的普通函数就可以了。)

10-05 21:28