link_Node *pNode,*tempsegnode;; // here link_node is a class
vector<link_Node*> *pList;
pNode = (*pList)[i];
i want to find that a pNode is last in pList and if so i have to take some corrective measure.
i tried using end() API but not able to make it working
can someone help how to find last element from pList and then compare pNode and last element.
i had just started working in C++ and started modifying a code which make use of vectors.
please help me out with this.
link_Node *pNode,*tempsegnode;; // here link_node is a class
vector<link_Node*> *pList;
pNode = (*pList)[i];
i want to find that a pNode is last in pList and if so i have to take some corrective measure.
i tried using end() API but not able to make it working
in other words i need to know what is last element in vector list pList and compare with pNode and if they r same i need to do some processing.
can someone help how to find last element from pList and then compare pNode and last element.
I assume you want something along these lines:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
|
#include <iostream>
#include <vector>
//-----------------------------------------------------------------------------
class link_Node
{
// Some stuff
};
//-----------------------------------------------------------------------------
int main()
{
link_Node *pNode = 0;
link_Node *tempsegnode = 0;
std::vector< link_Node* > *pList;
pList = new std::vector< link_Node* >;
pList->push_back(new link_Node);
pNode = (*pList)[0];
if(pNode == pList->back())
{
std::cout <<"at end" << std::endl;
}
else
{
std::cout <<"not at end" << std::endl;
}
pList->push_back(new link_Node);
if(pNode == pList->back())
{
std::cout <<"at end" << std::endl;
}
else
{
std::cout <<"not at end" << std::endl;
}
// TODO: Clean up code...
return 0;
}
/* End of file ***************************************************************/
|
PS: Only post your question in one forum.
Last edited on
Thanks for your reply.
i did the same thing
link_Node *pSegNode,*temppp;
temppp = (*(pSegList)->end()-1);
printf(" name is %s",temppp->sGetName().c_str());
but i m getting the segmentation fault.
am i missing something here?
temppp = *(pSegList->end()-1);
??