Каждой попытке предоставить оператор, использующий шаблоны, потребуется как минимум одна секунда перегрузки. Но вы можете избежать этого, указав оператор внутри класса:
template <unsigned int m>
class A
{
public:
A(int) {}
inline friend A operator+(const A& a, const A& b) { return A(0); }
};
Работает для обоих, a+5
и 5+a
.
Я всегда использовал Git bash, но для предложений CMD см. эту ссылку StackExchange , в которой говорится, что вам нужно изменить кодовую страницу на UTF8, открыв CMD и запустив chcp 65001
и в свойствах CommandPromt-> Шрифт, измените Шрифт на "Lucida Console".