C++ is used in a wide variety of platforms and environments, some of which don’t provide all of the features described in the C++ Standard. For example, C++ features that require operating system support may be unavailable in low-end embedded systems, or when implementing an operating system itself. To help programmers write highly portable code, the C++ Standard drew a line between the “freestanding” features that should be available everywhere and the “hosted” features that might not. But the line has always been blurry. As C++ continues to develop, more and more developers are asking where and how that line should be drawn.
#c++