Автор |
Сообщение |
ДобрыйФей Мечтатель Предупреждений : 5
|
|
Есть, к примеру, такая штука:
Код: |
#include <vector.h>
struct hm
{
char x;
int y;
} ;
vector<hm> lalala; |
Вектор структур то бишь. Как добавить элемент к этому вектору, и как вообще со всем этим делом работать? |
|
|
|
|
dipp Эксперт |
|
http://msdn.microsoft.com/en-us/library/k449z507%28VS.80%29.aspx
Смотри секцию Member Functions.
Пример консольки в VS '08.
Код: |
struct hm
{
char x;
int y;
} ;
std::vector<hm> lalala;
int _tmain(int argc, _TCHAR* argv[])
{
hm hm_s, hm_g;
hm_s.x=100;
hm_s.y=1;
lalala.push_back(hm_s); //Add an element to the end of the vector.
hm_g=lalala.at(0); //Returns a reference to the element at a specified location in the vector.
return 0;
} |
|
|
|
|
|
ДобрыйФей Мечтатель Предупреждений : 5
|
|
Ой, пасибки.
А обращаться как обычно? lalala[i].x? Или как? |
|
|
|
|
dipp Эксперт |
|
ДобрыйФей писал(а): |
А обращаться как обычно? lalala[i].x? Или как? |
Вот так:
либо
Код: |
hm_g=lalala.at(i);
hm_g.x; |
|
|
|
|
|
ДобрыйФей Мечтатель Предупреждений : 5
|
|
Код: |
void xxx (vector<entry> &v) |
Правильно же?
Вообще хотел спросить про побитовую запись. Например, кодирую я файл кодом Фано. У меня каждому символу сопоставляется вектор из нулей и единиц. Так вот, что с ними потом делать? Побитово в новый файл записывать? А как?
И это, а что с обычным числами происходит при кодировании? |
|
|
|
|
dipp Эксперт |
|
ДобрыйФей писал(а): |
Побитово в новый файл записывать? А как? |
как-то так:
Код: |
typedef std::vector<hm> vhm;
vhm lalala;
void writev (vhm &v)
{
unsigned char symbol=0;
for (int i=0; i<8; i++)
{
symbol+=v.at(i).x;
symbol=symbol<<1;
}
//file.Write((void*)&symbol, 1);
}
|
Что с обычными чилсами происходит - без понятия. Я здесь лишь кручу векторами, а с кодом Фано сам разбирайся . |
|
|
|
|
|