Sorry, I may not have the terminology correct, but what’s the practical difference between declaring something like this (just an example):
std::unique_ptr<AudioProcessorGraph> mainProcessor;
mainProcessor.reset(new AudioProcessorGraph);
// (Or passing it in during a constructor:)
class foo (AudioProcessorGraph& graph) : mainProcessor (graph)
And just instantiating it as a variable?:
AudioProcessorGraph mainProcessor;
With the first you use a ptr to access vs. a dot to access:
mainProcessor->someFunction();
vs.
mainProcessor.someFunction();
… but they both seem to work. I’ve seen it both ways, and unless you’re passing some special parameters during construction, I wonder if there is any practical difference?