Se você frequentemente precisa calcular o quadrado de um valor, perceberá que usar pow (x, 2.0) de
math.h não é a oportunidade mais rápida.
Existem implementações fastpow (), algumas pessoas usam exp e log, e outras apenas escrevem x * x em seu código.
Para o último caso, aqui está um pequeno modelo c ++ que reduz o esforço de escrever x * x para expressões longas de x:
template <class T>
inline T square(T value) {
return value*value;
}