How to Square a Number

beginner c++11

The easiest way to square a number is to multiply it by itself.

#include <iostream>

int square(int x) {
  return x * x;
}

int main() {
  int x = 7;
  std::cout << square(x) << "\n";
}
49

If we want to square any type that can be multiplied by itself then we want to use a template. Templates let us define a function with a placeholder for the type (a parameter that we’ll call “T” in this example) that the compiler then implements for us at compile time based on how the function is used. You’ve used templates before when you created a std::array or a std::vector. Here’s how to write a template function that squares anything that can be multiplied by itself.

#include <iostream>

template <typename T>
T square(T x) {
  return x * x;
}

int main() {
  int x = 7;
  std::cout << square(x) << "\n";

  float pi = 3.14159f;
  std::cout << square(pi) << "\n";
}
49
9.86959

For more C++ By Example, click here.