View Full Version : [C++] copiare lista in altra lista vuota
mistergks
16-04-2013, 10:47
Ho una list <int> numeri; che ha 27 nodi
Poi creo una list <int> ncopy; e quindi vuota!
Voglio copiare tutta la lista numeri in ncopy!
Posso fare cosi?
Ncopy = numeri;
E posso copiare una lista in un vector? E una lista in un altra di tipo diverso?
mistergks
16-04-2013, 15:10
Up : it is important!!!
Inviato dal mio GT-I9003 usando Tapatalk
The_ouroboros
16-04-2013, 15:14
http://www.cplusplus.com/reference/list/list/list/
std::list<int> new (old.begin(),old.end());
tomminno
16-04-2013, 17:31
http://www.cplusplus.com/reference/list/list/list/
std::list<int> new (old.begin(),old.end());
o più semplicemente
list<int> source;
list<int> copy(source);
list<int> copy2 = source;
mistergks
16-04-2013, 21:48
o più semplicemente
list<int> source;
list<int> copy(source);
list<int> copy2 = source;
Quindi si puo fare!
E con list di tipo diverso? E con vector? Non riesco a capire
Inviato dal mio GT-I9003 usando Tapatalk
The_ouroboros
17-04-2013, 07:31
Liste con elementi di tipo diverso come fai a copiarle tra loro? O per te un cesto di banane è la stessa cosa di uno di pere?
Inviato dal mio Sony Xperia P
mistergks
17-04-2013, 09:57
In effetti.......
Inviato dal mio GT-I9003 usando Tapatalk
tomminno
17-04-2013, 10:35
Quindi si puo fare!
E con list di tipo diverso? E con vector? Non riesco a capire
Inviato dal mio GT-I9003 usando Tapatalk
Ma provare e/o studiare la documentazione del C++ no?
list di tipo diverso in generale non si possono copiare.
Mele e Pere al massimo fanno un cesto di Frutta :D
Se i tipi sono compatibili però la copia è possibile ad esempio:
std::list<short> s;
std::list<int> i(s.begin(), s.end());
e anche questo:
class A
{
public:
A() {}
operator int() { return 0; }
};
...
std::list<A> s;
std::list<int> i(s.begin(), s.end());
e pure questo:
class A
{
public:
A() {}
};
class B : public A
{
public:
B() {}
};
std::list<B> s;
std::list<A> i(s.begin(), s.end());
vector ha gli stessi costruttori di list, quindi è possibile copiare vector tramite costruttore oppure operatore assegnamento
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.