Olisi kysymys c liittyn.
Tarkoituksena on tehdä ohjelma jossa on:
struct JOTAIN
{
string nimi
int ika
}
pää ohjelmalla täytetään "struct" vektoria/list/iteraattori apuna käyttäen.
En vaan oikeen tajuu miten se tehdään...
esim. näinkö..?
list jotkut;
list ::iterator;
sitten se täyttäminen
iterattori->nimi...?? en oikeen tiedä..??
Tarkoituksena on tehdä ohjelma jossa on:
struct JOTAIN
{
string nimi
int ika
}
pää ohjelmalla täytetään "struct" vektoria/list/iteraattori apuna käyttäen.
En vaan oikeen tajuu miten se tehdään...
esim. näinkö..?
list jotkut;
list ::iterator;
sitten se täyttäminen
iterattori->nimi...?? en oikeen tiedä..??
Vastaukset 5
Vanhimmat
Oletetan että ole luonut luokan OmaLuokka.
Listan alustus:
std::list lista; //Lista jossa on OmaLuokka tyypin olioita.
tai
std::list ptrLista; // Lista osoittimista jotka osoittavat omaluokka olioihin
Olion lisääminen listaan:
OmaLuokka uusi; //Luodaan uusi olio
uusi.jokuMuuttuja = 1;
lista.push_back(uusi); //Lisätään se listaan
tai
Omaluokka *osoitin = new OmaLuokka; //Luodaan uusi olio dynaamisesti
osoitin->jokuMuuttuja = 2;
ptrLista.push_back(osoitin); //Lisätään se listaan
Listan luku:
std::list::iterator it; //Luodaan iteraattori
it = lista.begin(); //asetetaan se listan alkupäähän
std::cout
#include
using std::list;
struct Oma{
float mf;
int mi;
};
int main(){
list a;
Oma b;
b.mf=1;
b.mi=1;
a.push_back(b);
.
:
}
miten onnistuu tulostamaan syötetyt arvot..??
#include
#include
using std::list;
struct Oma{
float mf;
int mi;
};
int main(){
list a;
Oma b;
const Oma*b_ref;
b.mf=1;
b.mi=1;
a.push_back(b);
b.mf=2;
b.mi=2;
a.insert(a.end(),b);
for(list::const_iterator a_iter=a.begin();a_iter!=a.end();a_iter ){
b_ref=&(*a_iter);
std::cout
#include
#include
using std::list;
struct Oma{
float mf;
int mi;
};
template class myList : public list {};
int main(){
myList a;
Oma b;
const Oma*b_ref;
myList::const_iterator a_iter;
b.mf=1;
b.mi=1;
a.push_back(b);
b.mf=2;
b.mi=2;
a.insert(a.end(),b);
for(a_iter=a.begin();a_iter!=a.end();a_iter ){
b_ref=&(*a_iter);
std::cout