Если вы хотите, чтобы MaxResults
держал указатель на Analysis2
объект, вы должны сделать это так:
class MaxResults {
public:
MaxResults(Analysis* an) : analysis(an) {}
private:
Analysis* analysis;
};
и сконструируйте его так:
Analysis2 analysis = Analysis2();
MaxResults maxresults = MaxResults( &analysis);
Обратите внимание на использование оператора адреса (&) для захвата адреса analysis
и передачи его в качестве указателя на конструктор MaxResults
, который сохраняет указатель в элементе (используя список инициализации, который является более или менее эквивалентно выполнению analysis = an
в теле конструктора, на случай, если синтаксис :
является для вас новым).
Для дальнейшего чтения взгляните на ссылки (разумеется, как только вы лучше поймете указатели). В этом случае ссылки, вероятно, предпочтительнее.