nCompilation
unit
nC++ file plus included files (usually header files with declarations)
n
nODR
across compilation units
nLinker will complain if we have the same definition in different units because we cannot allocate
the memory twice
for the same variable (which memory location to use?)