///////////////////////////////////////////// // MT1Q2.cpp - Scope class #include "MT1Q2a.h" #include #include #include int main() { std::cout << "\n MT1Q2a - Scope class and sorting by complexity"; std::cout << "\n ================================================\n"; Scope s1; s1.name() = "Scope1"; s1.complexity() = 6; Scope s2; s2.name() = "Scope2"; s2.complexity() = 3; Scope s3; s3.name() = "Scope3"; s3.complexity() = 2; Scope s4; s4.name() = "Scope4"; s4.complexity() = 1; Scope s5; s5.name() = "Scope5"; s5.complexity() = 1; Scope s6; s6.name() = "Scope6"; s6.complexity() = 1; // sorting vector of scopes using Scopes = std::vector; Scopes scopes{ &s6, &s4, &s3, &s1, &s2, &s5 }; std::sort(std::begin(scopes), std::end(scopes), Scope::more); for (auto pScope : scopes) { std::cout << "\n " << pScope->name() << " - complexity = " << pScope->complexity(); } std::cout << "\n\n"; }