Job Recruitment Website - Job seeking and recruitment - Which hero accompanied me to write a c++ program: recruitment information management system.
Which hero accompanied me to write a c++ program: recruitment information management system.
I hope you can learn a little from it and then write other functions.
# pragma once//v 3 . 0 . 522322. 12 1 18002
///////////////////////////////////////////////////////
//contents: definition of line class type of cJOB
//Name: Cjob_rowtype
Cjob_rowtype class {
Public:
Long m _ iSuffix// suffix 1
STD::string m _ str company; //Employer.2 (i)
STD::string m _ str speciality; //Professionals.3 (i)
Int m _ EducationalLevel///education4 (i)
Long m _ iNumber// number of people
Public:
Cjob_rowtype()
{
m _ I suffix = 0;
m _ strCompany =
m _ strSpeciality =
m _ educational level = 0;
m _ iNumber = 0;
}
virtual ~ Cjob _ rowtype(){; }
Public:
/////////////////////////////////////////////////////////////
//function: GetCol_iSuffix
//effect: get the ref of col. col as iSuffix
//Return: Long &
Dragon & ampGetCol_iSuffix(void)
{
Returns m _ iSuffix
}
/////////////////////////////////////////////////////////
//function: GetCol_strSpeciality
//Effect: The ref. col of the obtained column is strSpeciality.
//return: STD:: string &;
STD::string & amp; GetCol_strSpeciality(void)
{
Returns m _ strSpeciality
}
///////////////////////////////////////////////////////////////
//function: GetCol_EducationalLevel
//effect: the ref of col. col is EducationalLevel.
//Return:int & amp;
int & ampGetCol_EducationalLevel(void)
{
Returns m _ EducationalLevel
}
}
;
End of Cjob _ rowtype class
///////////////////////////////////////////////////////
//Contents:TBL class type definition
//Name: Cjob
Cjob class {
Private:
Cjob _ rowtype m _ EmptyRow
STD::vector & lt; Cjob _ rowtype & gtm _ DATAcorpora
STD::multimap & lt; std::string,long & gtm _ strCompany _ idxmmap
STD::multimap & lt; std::string,long & gtm _ strSpeciality _ idxmmap
STD::multimap & lt; int,long & gtm _ EducationalLevel _ idxmmap
Public:
typedef Cjob _ rowtype ROWTYPE
typedef STD::vector & lt; Long & gtRPSTYPE//RPS (Return Pointer Set) Type Definition
typedef STD::vector & lt; Cjob _ rowtype & gt* iterator TBLITTYPE
Public:
Cjob()
{
}
virtual ~ Cjob(){; }
Public:
////////////////////////////////////////////////////////////
//Function: Clear
//Effect: Clear tbl.
//Return: No return.
Empty clear (empty)
{
m _ data corpora . clear();
m _ str company _ idxmmap . clear();
m _ strSpeciality _ idxmmap . clear();
m _ educational level _ idxmmap . clear();
}
//////////////////////////////////////////////////////////
//function: GetRowCount
//Effect: Get the number of lines of tbl.
//return: long
long GetRowCount()
{
return(long)m _ data corpora . size();
}
////////////////////////////////////////////////////////////////
//function: GetRowCount
//Effect: Get the number of tbl rows according to RPS.
//return: long
long GetRowCount(const STD::vector & lt; long & gt& ampvRps)
{
return(long)vrps . size();
}
////////////////////////////////////////////////////////////////
//function: GetRow
//Effect: Get a specified line.
//Return:Cjob _ rowtype & amp;
Cjob _ rowtype & ampGetRow(long lRowNum)
{
if(lRowNum & gt; = 0 & amp& amplRowNum & lt(long)m_DATAcorpora.size())
return m _ data corpora[lRowNum];
other
{
Cjob _ rowtype tmpEmptyrow
m _ EmptyRow = tmpEmptyrow
Returns m _ EmptyRow.
}
}
///////////////////////////////////////////////////////////////
//function: GetRow
//Effect: Get a specified line in RPS.
//Return:Cjob _ rowtype & amp;
Cjob _ rowtype & ampGetRow(const STD::vector & lt; long & gt& ampvRps,long lRowNum)
{
Long ltmp
Do {
{
Cjob _ rowtype tmpEmptyrow
m _ EmptyRow = tmpEmptyrow
}
ltmp = lRowNum
if(ltmp & lt; 0) returns m _ EmptyRow.
if(ltmp & gt; =(long)vRps.size ()) returns m _ EmptyRow.
ltmp = vRps[lRowNum];
if(ltmp & lt; 0) returns m _ EmptyRow.
if(ltmp & gt; = (long) m _ datacorporation.size ()) returns m _ EmptyRow.
return m _ data corpora[ltmp];
} while(0);
}
////////////////////////////////////////////////////////
//Function: adding
//Effect: Add a specified line and build an index.
//Return: No return.
void Add(const Cjob _ rowtype & amp; varRow)
{
m _ data corpora . push _ back(varRow);
m_strCompany_idxmmap.insert(
STD::pair & lt; std::string,long & gt(
varRow.m_strCompany,
(long)(m _ data corpora . size()- 1));
m_strSpeciality_idxmmap.insert(
STD::pair & lt; std::string,long & gt(
varRow.m_strSpeciality,
(long)(m _ data corpora . size()- 1));
m _ educational level _ idxmmap . insert(
STD::pair & lt; int,long & gt(
varRow.m_EducationalLevel,
(long)(m _ data corpora . size()- 1));
}
////////////////////////////////////////////////////////////////
//function: SelG_iSuffix
//Effect: Select and build RPS, in which col & gtval uses wires.
//Return: No return.
void SelG_iSuffix(long iVal,STD::vector & lt; Long & gt& ampvRps) // (not applicable)
{
for(long ltmp = 0; ltmp & lt(long)m _ data corpora . size(); ltmp++)
if(m_DATAcorpora[ltmp].m _ iSuffix & gtiVal)
vrps . push _ back(ltmp);
}
//////////////////////////////////////////////////////////////
//function: SelGc_iSuffix
//Effect: Select and build RPS, in which col> Val. Clear rps first.
//Return: No return.
void SelGc_iSuffix(long iVal,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelG_iSuffix(iVal,vRps);
}
////////////////////////////////////////////////////////////
//function: SelG_strSpeciality
//Effect: Select and build RPS, in which col & gtval uses exponent.
//Return: No return.
void SelG _ str speciality(STD::string Val,STD::vector & lt; long & gt& ampvRps) //(i)
{
for(STD::multimap & lt; Std::string, long & gt* iterator it = m _ strspecificity _ idxmmap.upper _ bound (val);
It! = m _ strSpeciality _ idxmmap . end(); ++it)
vrps . push _ back(it-& gt; Second);
}
//////////////////////////////////////////////////////////
//function: selgc _ str specificity
//Effect: Select and build RPS, in which col> Val. Clear rps first.
//Return: No return.
void SelGc _ str speciality(STD::string Val,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelG_strSpeciality(Val,vRps);
}
///////////////////////////////////////////////////////
//function: SelG_EducationalLevel
//Effect: Select and build RPS, in which col & gtval uses exponent.
//Return: No return.
void SelG _ education allelevel(int iVal,STD::vector & lt; long & gt& ampvRps) //(i)
{
for(STD::multimap & lt; Int, long & gt* iterator it = m _ educational level _ idxmmap.upper _ bound (ival);
It! = m _ education allelevel _ idxmmap . end(); ++it)
vrps . push _ back(it-& gt; Second);
}
////////////////////////////////////////////////////////
//function: SelGc_EducationalLevel
//Effect: Select and build RPS, in which col> Val. Clear rps first.
//Return: No return.
void SelGc _ education allelevel(int iVal,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelG_EducationalLevel(iVal,vRps);
}
///////////////////////////////////////////////////////////
//function: SelE_iSuffix
//Effect: Select and build RPS, where col=val uses traversal.
//Return: No return.
void SelE_iSuffix(long iVal,STD::vector & lt; Long & gt& ampvRps) // (not applicable)
{
for(long ltmp = 0; ltmp & lt(long)m _ data corpora . size(); ltmp++)
if(m_DATAcorpora[ltmp].m_iSuffix==iVal)
vrps . push _ back(ltmp);
}
////////////////////////////////////////////////////////
//function: SelE 1_iSuffix
//Effect: Select the line 1st, where col=val, or return the default line.
//Return:Cjob _ rowtype & amp;
Cjob _ rowtype & ampSelE 1_iSuffix(long iVal)
{
STD::vector & lt; long & gtvRps
SelE_iSuffix( iVal,vRps);
Returns GetRow( vRps, 0);
}
////////////////////////////////////////////////////////
//function: SelEc_iSuffix
//Effect: Select and build RPS with col=val. Clear rps first.
//Return: No return.
void SelEc_iSuffix(long iVal,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelE_iSuffix(iVal,vRps);
}
/////////////////////////////////////////////////////////////////
//function: SelNE_iSuffix
//Effect: Select and build RPS where col! =val
//Return: No return.
void SelNE_iSuffix(long iVal,STD::vector & lt; long & gt& ampvRps)
{
SelL_iSuffix(iVal,vRps);
SelG_iSuffix(iVal,vRps);
}
///////////////////////////////////////////////////////////
//function: SelNEc_iSuffix
//Effect: Select and build RPS where col! =val。 Clear rps first.
//Return: No return.
void SelNEc_iSuffix(long iVal,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelNE_iSuffix(iVal,vRps);
}
////////////////////////////////////////////////////////
//function: SelE_strSpeciality
//Effect: Select and build RPS, where col=val uses index.
//Return: No return.
void SelE _ str speciality(STD::string Val,STD::vector & lt; long & gt& ampvRps) //(i)
{
STD::pair & lt; STD::multimap & lt; Std::string, long & gt* iterator, STD:: multimap <; Std::string, long & gt* iterator & gtpa;;
pa = m _ strSpeciality _ idxmmap . equal _ range(Val);
for(STD::multimap & lt; Std::string, long & gt* iterator it = pa.first it! = pa.second++it)
vrps . push _ back(it-& gt; Second);
}
///////////////////////////////////////////////////////
//function: sele1_ str specificity
//Effect: Select the line 1st, where col=val, or return the default line.
//Return:Cjob _ rowtype & amp;
Cjob _ rowtype & ampsele 1 _ str speciality(STD::string Val)
{
STD::vector & lt; long & gtvRps
SelE_strSpeciality( Val,vRps);
Returns GetRow( vRps, 0);
}
///////////////////////////////////////////////////////
//function: SelEc_strSpeciality
//Effect: Select and build RPS with col=val. Clear rps first.
//Return: No return.
void SelEc _ str speciality(STD::string Val,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelE_strSpeciality(Val,vRps);
}
///////////////////////////////////////////////////////////
//function: selne _ str specificity
//Effect: Select and build RPS where col! =val
//Return: No return.
void SelNE _ str speciality(STD::string Val,STD::vector & lt; long & gt& ampvRps)
{
SelL_strSpeciality(Val,vRps);
SelG_strSpeciality(Val,vRps);
}
////////////////////////////////////////////////////////////
//function: selnec _ str specificity
//Effect: Select and build RPS where col! =val。 Clear rps first.
//Return: No return.
void SelNEc _ str speciality(STD::string Val,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelNE_strSpeciality(Val,vRps);
}
/////////////////////////////////////////////////////////////
//function: SelE_EducationalLevel
//Effect: Select and build RPS, where col=val uses index.
//Return: No return.
void SelE _ education allelevel(int iVal,STD::vector & lt; long & gt& ampvRps) //(i)
{
STD::pair & lt; STD::multimap & lt; Int, long & gt* iterator, STD:: multimap <; Int, long & gt* iterator & gtpa;;
pa = m _ educational level _ idxmmap . equal _ range(iVal);
for(STD::multimap & lt; Int, long & gt* iterator it = pa.first it! = pa.second++it)
vrps . push _ back(it-& gt; Second);
}
/////////////////////////////////////////////////////////////
//function: sele1_ educationlevel
//Effect: Select the line 1st, where col=val, or return the default line.
//Return:Cjob _ rowtype & amp;
Cjob _ rowtype & ampsele 1 _ Education level (international)
{
STD::vector & lt; long & gtvRps
SelE_EducationalLevel( iVal,vRps);
Returns GetRow( vRps, 0);
}
/////////////////////////////////////////////////////////////
//function: SelEc_EducationalLevel
//Effect: Select and build RPS with col=val. Clear rps first.
//Return: No return.
void SelEc _ education allelevel(int iVal,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelE_EducationalLevel(iVal,vRps);
}
////////////////////////////////////////////////////////
//function: SelNE_EducationalLevel
//Effect: Select and build RPS where col! =val
//Return: No return.
void SelNE _ education allelevel(int iVal,STD::vector & lt; long & gt& ampvRps)
{
SelL_EducationalLevel(iVal,vRps);
SelG_EducationalLevel(iVal,vRps);
}
//////////////////////////////////////////////////////////////
//function: SelNEc_EducationalLevel
//Effect: Select and build RPS where col! =val。 Clear rps first.
//Return: No return.
void SelNEc _ education allelevel(int iVal,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelNE_EducationalLevel(iVal,vRps);
}
///////////////////////////////////////////////////////////
//function: SelL_iSuffix
//effect: select and build RPS, where col & ltval uses wires.
//Return: No return.
void SelL_iSuffix(long iVal,STD::vector & lt; Long & gt& ampvRps) // (not applicable)
{
for(long ltmp = 0; ltmp & lt(long)m _ data corpora . size(); ltmp++)
if(m_DATAcorpora[ltmp].m _ iSuffix & ltiVal)
vrps . push _ back(ltmp);
}
//////////////////////////////////////////////////////////
//function: SelLc_iSuffix
//effect: select and build RPS, where col < val. Clear rps first.
//Return: No return.
void SelLc_iSuffix(long iVal,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelL_iSuffix(iVal,vRps);
}
///////////////////////////////////////////////////////
//function: sell _ str specificity
//Effect: Select and build RPS, in which col & ltval uses exponent.
//Return: No return.
void SelL _ str speciality(STD::string Val,STD::vector & lt; long & gt& ampvRps) //(i)
{
STD::pair & lt; STD::multimap & lt; Std::string, long & gt* iterator, STD:: multimap <; Std::string, long & gt* iterator & gtpa;;
pa = m _ strSpeciality _ idxmmap . equal _ range(Val);
for(STD::multimap & lt; Std::string, long & gt* iterator it = m _ strspecificity _ idxmmap.begin (); It! = pa.first++it)
vrps . push _ back(it-& gt; Second);
}
/////////////////////////////////////////////////////////////
//function: SelLc_strSpeciality
//effect: select and build RPS, where col < val. Clear rps first.
//Return: No return.
void SelLc _ str speciality(STD::string Val,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelL_strSpeciality(Val,vRps);
}
///////////////////////////////////////////////////////////////
//function: SelL_EducationalLevel
//Effect: Select and build RPS, in which col & ltval uses exponent.
//Return: No return.
void SelL _ educational level(int iVal,STD::vector & lt; long & gt& ampvRps) //(i)
{
STD::pair & lt; STD::multimap & lt; Int, long & gt* iterator, STD:: multimap <; Int, long & gt* iterator & gtpa;;
pa = m _ educational level _ idxmmap . equal _ range(iVal);
for(STD::multimap & lt; Int, long & gt* iterator it = m _ educational level _ idxmmap.begin (); It! = pa.first++it)
vrps . push _ back(it-& gt; Second);
}
///////////////////////////////////////////////////////////////
//function: SelLc_EducationalLevel
//effect: select and build RPS, where col < val. Clear rps first.
//Return: No return.
void SelLc _ education allelevel(int iVal,STD::vector & lt; long & gt& ampvRps)
{
vrps . clear();
SelL_EducationalLevel(iVal,vRps);
}
////////////////////////////////////////////////////////////
//function: RpsAnd
//Effect: Set intersection for RPS. Varrpsource1is also the result.
//Return:RPSTYPE & amp;
RPSTYPE & ampRPS and(RPS type & amp; varRpsSource 1,RPSTYPE & ampvarRpsSource2)
{
STD::sort(varrpssource 1 . begin()、varrpssource 1 . end());
std::sort( varRpsSource2.begin()、varrpssource 2 . end());
RPS type source 3(varrpssource 1 . size()+varrpssource 2 . size());
RPSTYPE::iterator it newend 2 = STD::set _ intersection(
varRpsSource 1.begin()、varRpsSource 1.end()、varRpsSource2.begin()、varRpsSource2.end()、source 3 . begin();
varrpssource 1 . clear();
for(RPSTYPE::iterator it = source 3 . begin(); It! = itNewEnd2++ it)varrpssource 1 . push _ back(* it);
Returns varrpsource1;
}
//////////////////////////////////////////////////////////
//function: RpsOr
//Effect: Set union for RPS. Varrpsource1is also the result.
//Return:RPSTYPE & amp;
RPSTYPE & ampRPS or(RPS type & amp; varRpsSource 1,RPSTYPE & ampvarRpsSource2)
{
STD::sort(varrpssource 1 . begin()、varrpssource 1 . end());
std::sort( varRpsSource2.begin()、varrpssource 2 . end());
RPS type source 3(varrpssource 1 . size()+varrpssource 2 . size());
RPSTYPE::iterator it newend 2 = STD::set _ union(
varRpsSource 1.begin()、varRpsSource 1.end()、varRpsSource2.begin()、varRpsSource2.end()、source 3 . begin();
varrpssource 1 . clear();
for(RPSTYPE::iterator it = source 3 . begin(); It! = itNewEnd2++ it)varrpssource 1 . push _ back(* it);
Returns varrpsource1;
}
}
;
End of Cjob class
- Related articles
- Payment time of institutions in Jiangshan City, Quzhou City, Zhejiang Province in 2022
- Anshan Municipal Education Commission complaint hotline
- Tianjin hongan housekeeping service co., ltd. recruitment information, what about Tianjin hongan housekeeping service co., ltd.
- Welfare issues at Shanghai Pan-Asia Technology Center
- Model essay on kindergarten recruitment advertisement
- Is Chongqing Xiantao Data Valley Investment Management Co., Ltd. a state-owned enterprise?
- What conditions do you need to apply for a train conductor?
- Which entrance of the 2022 Guangxi Qinzhou junior accounting title admission ticket is printed?
- What are the conditions for entering the CIA? How does the CIA conduct personnel selection?
- Market fraud margin