You don't need to use extern for a function call. all that you need is a function prototype of a() inside other.cpp. The linker will figure out where a() is defined when you build your project.
Generally speaking, extern is used for data objects, prototype are used for functions.