What happens when you attempt to compile and run the following code?
#include
#include
#include
#include
#include
using namespace std;
template
public:
B(T v):val(v){}
T getV() const {return val;} };
template out;} template ostream & out; Out(ostream & o): out(o){} void operator() (const T & val ) { out< string tolower(const string & s) { string tmp(s); for(unsigned i = 0; i< tmp.size(); ++i){ tmp[i] = tolower(tmp[i]); } return tmp; } bool Less(const B return tolower(a.getV()) int main() { string t[]={"aaa","bbb","Aaa", "Bbb","aAa","bBb","aaA","bbB"}; vector > v1; v1.assign(t, t+8); stable_sort(v1.begin(), v1.end(), Less); for_each(v1.begin(), v1.end(), Out >(cout));cout< return 0; } Program outputs:
Gerry
8 months agoJosefa
9 months agoDenae
9 months agoLeontine
9 months agoKandis
9 months agoBambi
9 months agoJohanna
9 months agoCharlesetta
9 months agoDoug
9 months agoEdelmira
10 months agoKeena
10 months agoPercy
10 months agoVerlene
10 months agoLashaun
10 months agoNathalie
10 months ago