1. C++ itself is OS-independent. The same, standard-conforming code should compile fine on all platforms.
2. There are differences on dynamic library conventions between Windows, OS X, and Linux. That can affect how you build (compile, link, distribute, install) on each platform.
3. The use of OS-specific OS-features, system calls etc, and the actual development of Linux kernel and its hardware drivers.
It is completely possible to develop regular (C++) applications without ever explicitly stepping into the 3.