1. By using const protects you against programming errors which inadvertently alter data.
2. By using const allows function to procedure const and non-const actual both arguments, whereas a function without const in the prototype can only accept non constant arguments.
3. By using a const reference let the function to generate and employ a temporary variable appropriately.