C++ Linkers and the One Definition Rule

By Roger Orr

Most C programmers use a linker to create the binaries they create, but to many this process is a black box. In this presentation I'll unpack some of the functionality of the linker, and how it relates to the C source code that you start with.

I’ll also be looking at the C++ One Definition Rule (ODR) and explaining the reasons behind some of the consequences of breaking it.

The purpose of this talk is to improve your understanding of the linking and loading process for C++ programs, focussing on Windows and Linux, so you will hopefully be better able to work with, rather than fight against, the linking process.

Some basic knowledge of writing and executing a C++ program will be assumed.





Your Privacy

By clicking "Accept Non-Essential Cookies" you agree ACCU can store non-essential cookies on your device and disclose information in accordance with our Privacy Policy and Cookie Policy.

Current Setting: Non-Essential Cookies REJECTED


By clicking "Include Third Party Content" you agree ACCU can forward your IP address to third-party sites (such as YouTube) to enhance the information presented on this site, and that third-party sites may store cookies on your device.

Current Setting: Third Party Content EXCLUDED



Settings can be changed at any time from the Cookie Policy page.