in reply to Calling a subroutine - which is most efficient?
Think in terms of overall work done. In both cases you are passing a scalar value into the sub so the parameter handling is identical. In one case you dereference when making the call. In the other case you dereference inside the sub. In both cases you dereference once per call - no difference there.
As with many decisions about how to do stuff, the first way you try should be dictated by what is most maintainable - what form conveys the intent most clearly and is least prone to accidental breakage. Down the track when the code is working correctly, if you find it is too slow, then you may need to revisit code with a view to making it faster, but only after profiling and having a really good understanding of where the time is actually spent.
How many milliseconds per call of overhead are worth a half hour of your beer drinking time?
|
|---|