Что-то под конец рабочего дня голова перегрелась
class channel{
std::string name()const;
...
}
std::vector<channel*> channels;
std::string foo="bla_bla";
std::remove_if(channels.begin(),channels.end(),
boost::bind(std::equal_to<std::string>(),
boost::bind(&channel::name,_1),
boost::to_lower_copy(foo)
)
);
Сравниваться должны в нижнем регистре .
Как завернуть boost::bind(&channel::name,_1) в to_lower_copy ?
Bind ругается ...
Программа с использованием Qt , тупо не перехватывает исключения .
try{
throw int(10);
}catch(...){
qDebug("any exception");
}
В простой функции приводит к "abnormal program termination" ,
Qt собрана с поддержкой исключений , и прога компилируется с ключем -fexception .
В чем может быть дело ?
Нужно после компиляции скопировать библиотеку в определенную директорию,
например /home/user/prog , но чтобы debug версия в дир. debug ну и другая в релиз цоответственно .
Пробовал прописатц скопы :
debug:DLLDESTDIR=/home/user/prog/debug
release:DLLDESTDIR=/home/user/prog/release
qmake-у пофигу , внимания не обращает , копирует в одну дир-ию .
Никто не подскажет как быть ?
Имеем .
1. Библиотека для работы с CAN-Bus , сообщения читаются в отдельном треде(boost) и отсылаются сигналом(boost).
2. Класс-морда на Qt , унаследованный от QWidget , бустовский сигнал соединен с функцией класса ( сигнал посылается из треда )
В функции я разбираю сообщения и вывожу на LCDNumber's , которые обновляются с большой задержкой , но если минимироватъ , а потом максимировать окно , происходит мгновенное обновление . QApplication::processEvents() не помогает .
Также не могу ничего нарисовать на плоте и не работает qDebug() :-)
Буквально "на днях" столкнулся с multithreading-овым программированием , хелп ми плиз .
Кстати , что можно и нужно почитать на эту тему ?
Водрузил на ноуn кубунту 7.10 , WLAN настроил через wpa_supplicant
c WPA2 , всё работало .
Сегодня включаю , почту не забрать , интернет страницы не открываются ,
хотя всё прекрасно пропинговывается , dns прописаны , gateway тоже .
Что за фигня ?
Имеем enum DataType{ TYPE1,TYPE2,...TYPEN };
каждая константа соответсвует определённому POD типу (uchar , int , double ...)
template<typename T>
struct property {
std::string name;
T value;
};
но чтобы эта структура зависела от DataType , которая дефинирована
в сишной библиотеке , куда мне доступа нет .
Например TYPE1 соответствует unsigned char - значит мне нужна структура
с T=unsigned char .
Как реализовать такое ?
Помогите хорошим советом .
Есть класс , нужно чтоб был синглетом и чтоб имел чисто
виртуальные функции.
Как поступить ?И на йух сесть и рыбку съесть (с) Русская народная.
Не охота синглетовское поведение реализовать в каждом потомке,
с другой стороны без виртуальных функций не обойтись , ну и класс
должен быть абстрактным , обязательно .
Какие мысли ?
Как отучить кафеина копировать видеофайлы
перед просмотром в /tmp ?
Если файл открывать в File/Open то всё нормально,
если тыкать в окошке конкверора - начинает копирование.
Есть несколько классов исключений , чтоб не разводить
несколько "catch-ей" решил унаследовать их от std::exception
и перехватывать как ссылку на родителя .
Напр.
метод what() возвращает название класса , в моём случае
"12my_exception" независимо от error_message.
Какая сигнатура должна быть у what() ?
Заранее спасибо .
Функция должна работать с вектором
содержащим элементы любого типа .
Напр.
template<typename T>
void printVector(const std::vector<T>& vec)
{
std::vector<T>::const_iterator it=vec.begin();
тут g++ ругается .
Как правильно ?
Спасибо .
Есть некий код ( рабочий ) , который выдаёт некоторые значения
из базы данных (Paradox) , используется qodbc драйвер .
Всё это выглядит примерно так ( почти как в туторе асистента) ,
комп рабочий , с виндами ...
QSglDatabase db=QSqlDatabase::addDatabase("QODBC");
дальше setDatabaseName,setUserName и т.д.
Потом создаю запрос QSqlQuery("SELECT bla bla FROM bla bla WHERE и т.д");
Ну вообщем всё работает .
Создаю библиотеку ( qmake -t lib)
dll-ка мне нужна в LabVIEW .
Почему-то не выполняется соединение с базой , lastError ="Driver not loaded" ,
код рабочий , полдня убил , не могу найти причину , хотя думается мне , что это работает только в GUI-thread-e .
Помогите люди :-)
Как правильно установить локаль в дебиане ?
Мои действия .
dpkg-reconfigure locales , выбираю ru_RU.UTF-8 , всё нормально генерится.
Но вот что выдаёт на команду locale:
LANG=ru_RU.UTF-8
LANGUAGE=ru_DE:ru_RU:ru:en_GB:en
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
что это за фигня в language ?
Получаем косяки с кириллицей в консоле .
Пробовал console-cyrillic , но oн упорно выставляет KOI8-R , и раскладку в нём немецкую не поставишь...
Ставил через netinstall , если это имеет значение .