You don't supply enough information to make an informed guess.
You're using pointers... but not storing them? Does the "initialized CDummy instance" initialize it's m_name member to something other than an empty string? Why does CAnother::readName take a vector by value?
...
int main(){
CDummy dummy;
dummy.m_name = "sample name";
vector<CDummy> dummyVect;
dummyVect.push_back(dummy);
CAnother another;
another.readName(dummyVect);
}
But readName() always print an empty string... I tried with pointer to vector too