Let's say I have the following C++ code:
#ifndef _XMaster_
#define _XMaster_
class XMaster
{
public:
XMaster(string A, string B, string C)
{
nM = A;
oC = B;
nI = C;
}
string nM;
string oC;
string nI;
vector<int> TSNRay;
vector<int> TSNFor;
};
#endif
void Hershika(vector<XMaster> &Tapren, size_t IS);
int Main()
{
vector<XMaster> Tapren;
// Let's just say I have x number of elements in Tapren vector and the vector
// data members TSNRay and TSNFor both filled
size_t IS = 0;
for(IS; IS < Tapren.size(); ++IS)
{
Hershika(Tapren, IS);
}
return 0;
}
void Hershika(vector<XMaster> &Tapren, size_t IS)
{
vector<int>::const_iterator AIT;
if(!Tapren[IS].TSNRay.empty())
{
for (AIT = Tapren[IS].TSNRay.begin() ;
AIT != Tapren[IS].TSNRay.end(); ++AIT)
{
AnDt(Tapren, *AIT, IS);
}
}
}
My question is how to make function Hershika works with either data members TSNRay or TSNFor since they are both of the same type? As shown, it can only access TSNRay. When calling it, how can I specify that I need to pass TSNRay or TSNFor?
Thank you!