Required C++ standard?

I vaguely remember having read that the C++ standard required for building JUCE is C++11 unless one uses the DSP module, for which C++14 is required.

  1. Where do I find that information? I couldn’t find in the website any clear statement of the current requirements for developing with JUCE,

  2. If what I remember is true, and C++11 should be sufficient, then I worried about the abundant usage of std::make_unique outside of the DSP module, because it seems to me that make_unique has been included in the standard only in C++14.

Each JUCE module can define its own C++ standard requirements using minimumCppStandard in its header. For instance in juce_dsp.h:


If it is not specified, it defaults to 11.

However you’re 100% right that JUCE effectively should require C++14, due to the usage of std::make_unique.

1 Like

There’s an implementation of std::make_unique() for pre-C++14:

3 Likes

Ah thanks for pointing out, I wasn’t aware of that