LINUX.ORG.RU

Сообщения drZlo

 

спецам по mobile

Хочу прикупит Nokia E90. Плюсов, вроде бы, много: качественный девайс, набор софта хороший, симба (думаю, плюс, ну уж точно лучше, чем WM), сопстно карманный ноут. Но, поскольку в руках держал тока в магазе и попользовался там же, минусов заметить не успел. Просьба, покритиковать сее устройство и сравнить, если опыт такой имеется, с аналогичными на базе WM, Android, может Maemo... Есть просто возможность приобрести по нормальной цене. Ну и вообще ща думаю между Nokia e90, Nokia n97, HTC Diamond2, Nokia n810. Конечно, набор разношерстный, но если оставить цену, кто что посоветует ? В первую очередь нужно - чтение документов (pdf, doc, djvu...) и серфинг по нету.

drZlo
()

QT4: попиксельное отображение

Необходимо попиксельно отображать информацию через некоторый интервал времени. Точек довольно много (~ десятки тысяч) и разными цветами. Сейчас рисую сначала QPainter'ом на QImage drawPoint а потом отображаю drawImage. Как можно увеличить скорость отображения ?

drZlo
()

проблемы с Directx9

Вот захотелось в HoMM5 порубиться. Запускаю, сразу проблема - "Failed to initialize Direct3D9". Ставлю DX9 c (и e) по статейке http://www.opennet.ru/opennews/art.shtml?num=12887 - тож самое. Может кто подскажет, что еще можно сделать ? wine - 1.1.21. Kubuntu 8.04

И еще, не сммотря на то, что диск в приводе, игруха пишет, что нет диска и не запускается. В wincfg диск d - cdrom и путь /media/cdrom. Это еще почему ? пришлось nocd ставить...

drZlo
()

Параметризированная перегрузка: продолжение

Проблему решил так:

#define MAX_FUN
1. Вариант
class A {
public:
A();
typedef void (A::*pF)(int a);
vector<pF>;

f1(int a);
f2(int a);
..................
};

A::A() {
pF.resize(MAX_FUN);
pF[0] = &A::f1;
.......................
pF[MAX_FUN] = &A::fMAX_FUN;
}

Ну в общем понятно.
Так же можно сделать так

2. Вариант
class A{
public:
virtual void f1(int a) = 0;
}

class B : public A {
public:
void f1(int a) {cout << "Class B\n";}

}
........ Тут еще наследуем

Ну и создаем массив указателей на объект типа A, содержащий
указатели на производные классы.

1. Какой из методов лучше ?

2. А, если, у всех ф-ций будут разные типы аргумента a ?
f1(float a), f2(double a) и т.д. для варианта 1, и для ф-ций f1
разный тип в производных классах вариант 2.

Думаю, надо делать как-то так:

template<class X> class A {
public:
virtual void f1(X a) = 0;
};

class B : public A<float> {
void f1(float a);
};
......................

Но тогда вопрос какой тип должен иметь массив указателей на ф-ции
(Вариант 1) и объектов (Вариант 2) ? Ведь прототипы указателей тогда
будут у всех разные - (*f1)(X a), где Х - какой-то тип.

drZlo
()

С++: Параметризированная перегрузка

Хочется странного:

Есть ф-ция-член - void lala(int a);
Можно ли сделать так чтоб она перегружалась не по типу a, а по
значению ? Например, если a == 0, то тело ф-ции одно, если == 1, то
другое и т.д.

drZlo
()

С++ выделение динамической памяти

Как в плюсах выделить кусок памяти, чтоб ее потом можно динамически по мере надобности расширять и без оверхеда ? Не vector и т.п. Что-то типа обычного указателя (new...).

drZlo
()

работа с файлом C++ way

НУжно вычитывать бинарные данные из файла. Размер - единицы Гб.
Какой наиболее быстрый в плюсах способ чтения данных из любого места файла ?
Сейчас так: ifstream и read. Будет ли через mmap быстрее. И как mmap
использовать лучше в плюсах (может аналог какой есть ?) ? А то

char *in_data_ptr;

in_data_ptr = (char *) mmap(...);

как-то не по плюсовому, кажется ).

drZlo
()

kmail и сервер

Почту проверяю с разных компов через kmail. Поэтому в настройках на прием поставил птичку "Оставить полученное сообщение на сервере". И все было нормально, но на новом компе, при таких же настройках кмыл каждый раз тянет уже полученные, но оставленные на сервере письма, т.е. одни и те же письма тянет постоянно, чего никогда не было. Как от этого избавиться ?

drZlo
()

C++ & file

Никак не получается вычитать данные из бинарного файла.

1.
uint32_t vv[4];
ifstream fdi("my_file", ios::binary | ios::in);
fdi.read((char *) vv, 16);
И cout << vv[0]; выдает фигню. (Что должен выдать, я знаю).

2.
vector<uint32_t> vv1(4);
ifstream fdi("my_file", ios::binary | ios::in);
vector<uint32_t>::iterator pV = vv1.begin();
fdi.read((char *) pV, 16);

Вообще ошибка компиляции:

error: invalid cast from type ‘__gnu_cxx::__normal_iterator<unsigned int*, std::vector<unsigned int, std
::allocator<unsigned int> > >’ to type ‘char*’
(g++ 4.2.4)

Хотя тож самое в QT - все ОК.

Для QT
QVector<quint32> vv;
QVector<quint32>::iterator pV = vv.begin();

file.setFileName(my_file);
file.open(QIODevice::ReadOnly);
file.read( (char *) pV, 16 );

И как в "чистых" плюсах правильно и максимально быстро
прочитать бинарные данные ?

drZlo
()

различная настройка eth0

Ноут. Дома сетка со статическими IP, на работе dhcp. Как настроить
eth0 чтоб автоматом цеплялось ?
Через графическую конфигурялку кед настроить не удалось - никак не
хочет профили сети сохранять...
Через mapping в /etc/network/interfaces тож не сложилось...

drZlo
()

Пара вопросов по QT 4.4

1. Нужно прочитать данные из бин. файла filename
QVector<quint32> vec (4);

file.setFileName(filename);
file.open(QIODevice::ReadOnly);
QDataStream in(&file);
in >> vec;

Проблема в том, что в vec[0] содержится второе 32-битное слово из
файло, т.е. как будто перед вычитыванием был сделан seek со смещением
в 4 байта. Хотя in >> vec[0]; - OK, но нужно вычитать массив. Почему
так ? И как победить ?

2. Есть массив данных, нужно их отобразить, например, с помощью
QPainter drawLine по точкам в виде графика. Но кол-во данных больше, чем ширина отображаемой области в пикселах. Как _средствами_QT_! отобразить этот массив, чтоб он весь влез, с потерями, конечно (типа промасштабировать как-нить) ?

drZlo
()

C++ math lib

Народ, подскажите плз., есть ли math lib'а для C++, что-то типа gsl, но чисто плюсовая, чтоб без blas всяких и т.д. - все реализовано средствами языка. Интерисует в основном лин. алгебра и dsp.

drZlo
()

не понятно: memcpy

char *in_buf;
struct my_struct lala1;

in_buf = (char *) mmap(0, stat_buf.st_size, PROT_READ, MAP_PRIVATE, fdd, 0);

memcpy((struct my_struct *) &lala1, (char *) in_buf, sizeof(struct my_struct));
После этого:
В gcc 4.1.2 - Все нормально.
В gcc 4.2.4 - Segmentation fault.

С чем это может быть связано ???

P.S. структура my_struct - 4 поля типа uint32_t.

drZlo
()

Отслеживание изменения файла

Нужно из С-проги отслеживать изменения конф. файла и выполнять действия. Есть какие-то спец. С-либы для этого. Подскажите плз.

drZlo
()

VirtualBox & x86-64

VirtualBox - 2.0.6 (Sun'овская сборка). Должно x86-64 идти.
Но, при попытке установить x86-64 дистр все как и раньше:
Это ядро требует x86-64 CPU, но обнаружен только i686 и т.д.
В чем дело ?
Дистр (на HOSTE) - Gentoo.

drZlo
()

kontact & kwallet

Как подружить kontact (в частности KMail) и kwallet ? При входе/выходе из kontact он пишет, что kwallet не найден, хотя он запущен, и постоянно спрашивает - сохранить ли пароль у себя где-то, а я хочу через kwallet. И вообще, как добавить любое приложение к kwallet ? В настройках и хелпе ничего такого не нашел.

drZlo
()

kde 3.5 & QT4

Kubuntu 8.0.4
Подскажите, можно ли для разработки GUI пользовать QT4 ?
Хочет поставить libstdc++6, libqt4-core и т. д. и конфликтует с
qt3-designer и т.д. Не повредит ли вся эта перестановка текущей
системе ?

drZlo
()

RSS подписка на новые темы