#include "stdafx.h"
#include <iostream>
#include <algorithm>
#include <functional>
#include <vector>
#include<string>
using namespace std;
string int2str( int num);
struct para
{
string name;
string value;
};
class CImage {
public:
//myclass(int a, int b):first(a), second(b){}
string bb;
vector<para> bvec;
bool operator <(const CImage &m)const {
return this->bb < m.bb;}
//bool less_second(const b & m1, const b & m2);
};
class CSeries {
public:
string aa;
vector<para> seriesvec;
vector<CImage> bvec;
bool operator <(const CSeries &m)const {
return this->aa < m.aa;}
};
class CStudy{
public:
string cc;
vector<para> studyvec;
vector<CSeries> bvec;
};
int main() {
CImage myImage;
CSeries mySeries;
CStudy myStudy;
myStudy.cc="999";
para p;
p.name="studyUID";
p.value ="100";
myStudy.studyvec.clear();
myStudy.studyvec.push_back(p);
for(int i=9;i>0;i--)
{
mySeries.aa="100"+int2str(i);
p.name="seriesUID";
p.value ="100";
mySeries.seriesvec.clear();
mySeries.seriesvec.push_back(p);
mySeries.bvec.clear();
for(int i =9 ; i > 0 ; i --){
myImage.bb="10"+int2str(i);
p.name="b"+int2str(i);
p.value=int2str(i);
myImage.bvec.clear();
myImage.bvec.push_back(p);
mySeries.bvec.push_back(myImage);
}
sort(mySeries.bvec.begin(),mySeries.bvec.end());
myStudy.bvec.push_back(mySeries);
}
sort(myStudy.bvec.begin(),myStudy.bvec.end());
return 0 ;
}
string int2str(int num)
{
if (num == 0 )
return " 0 " ;
string str = "" ;
int num_ = num > 0 ? num : - 1 * num;
while (num_)
{
str = ( char )(num_ % 10 + 48 ) + str;
num_ /= 10 ;
}
if (num < 0 )
str = " - " + str;
return str;
}