One benefit of using const is that you cannot accidentally change the value of age in the middle of MyFunction (in the event you forgot it was not pass by reference). One "disadvantage" is that you can't recycle age with code like foo.process(++age);.