Possible reasons for symbol multiply defined other than 'extern'
问题 Is there any reasons for 'symbol multiply defined' other than not having the declaration in .h, having it as 'extern', and have the implementation in .cpp? I'm pretty sure that all my files follow the rule, but I'm getting an error message like this: ld: lto: could not merge in /Users/zlw/Library/Developer/Xcode/DerivedData/Wireless - amjmgyrircjezdhegioctszbcypz/Build/Intermediates/Wireless.build/Debug/Wireless.build/Objects normal/x86_64/qam.o because 'Linking globals named '