Опознать шрифт
По работе досталось картинок с отрендеренным текстом. Нужно заменить на соответствующий TrueType/OpenType:
По работе досталось картинок с отрендеренным текстом. Нужно заменить на соответствующий TrueType/OpenType:
template <typename Enum, E Value> struct Foo {};
enum X { A, B };
enum Y { C, D };
Foo<X, A> foo1;
Foo<Y, D> foo2;
При создании значений foo1 и foo2 шаблон необходимо параметризовать и типом enum и значением, что очевидно избыточно, так как значение уже связано с конкретным типом. Как сократить запись до:
Foo<A> foo1;
Foo<D> foo2;
Решения из C++11 приветствуются.
Требуется найти первоисточник первого правила программирования. Гуглится плохо, видимо из-за искажённой в памяти формулировки.
Почему бы автоматически не блокировать сообщения с некорректным LORCODE до их исправления автором? Вроде такого.[\i]
template <int X>
struct A
{
template <int Y>
static int mul() { return X * Y; }
template <int Y>
A() : value(X * Y) {}
int value;
};
int main(int argc, char ** argv)
{
int value = A<5>::mul<7>();
A<5> ... <7> ... a ... ?
return 0;
}
Обычный шаблонный класс. Вызвать его статический шаблонный метод просто (первая строчка в main), а вот как вызвать шаблонный конструктор? В результате a.value должно равняться 35.
Ubuntu 12.10, стоял KDE 4.9, не было печали. Поставил GNOME3 и GNOME2, пощупал, вернулся в KDE и обнаружил, что половина программ на китайском. Быстрый поиск обнаружил следующее:
$ env |grep -i lang
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN:en
Где это прописалось и как вернуть взад английскую локаль?
Предыдущая тема: Что за ужас?
На последний каст макском явиться поленился. Ситуация, мягко говоря, странная. Огромные шрифты всё ещё присутствуют как в полях ввода, так и в основном тексте на главной странице и форуме. Постить повторно одни и те же скриншоты на протяжении двух недель смысла никакого — просто зайдите по ссылке выше.
Отсюда вопрос: искалечен ли ЛОР навсегда или таки кто-то работает над этой проблемой?
class A
{
public:
operator int() const { return 123; }
operator bool() const = delete;
};
Пробуем 'if', работает как и ожидается:
A a;
if ( a ) {}
main.cpp:27:9: error: use of deleted function ‘A::operator bool() const’
main.cpp:8:2: error: declared here
Пробуем 'switch', не работает:
A a;
switch ( a ) {}
main.cpp: In function ‘int main()’:
main.cpp:23:13: error: ambiguous default type conversion from ‘A’
main.cpp:23:13: error: candidate conversions include ‘A::operator int() const’ and ‘A::operator bool() const’
Почему в случае 'switch' он пытается использовать приведение к bool, которое было удалено? Как правильно запретить неявное приведение к bool?
Пусть есть шаблонная функция:
template <typename T> void foo();
И есть множество её специализаций под каждый тип. Как правило их выносят в inline-функции, но в моём случае они получаются большими и раздувать код не хотелось бы. Отсюда вопрос: как правильно сгенерировать объектный код для всех желамых специализаций?
Пока в cpp-файле, в котором написаны специализации, сделал пустые заглушки с перечислением указателей на функции foo() для каждого типа. Это заставляет компилятор не оптимизировать их, встраивая как inline прямо в заглушку, а генерировать объектный код с точкой входа. Побочный эффект — тело функции-заглушки так же будет болтаться в объектнике со своим экспортом.
Хотелось бы понять, есть ли стандартный способ добиться того же и без побочных эффектов? Как это решается в С++11?
Помогите понять как правильно записать следующее:
template <typename T>
class A
{
public:
template <typename U>
class B
{
public:
static int foo;
};
};
template <typename T, typename U>
void bar()
{
A<T>::B<U>::foo = 5;
}
int main()
{
bar<int, char>();
return 0;
}
Ругается на строке:
A<T>::B<U>::foo = 5;
main.cpp: In function ‘void bar()’:
main.cpp:17:11: error: expected primary-expression before ‘>’ token
main.cpp:17:12: error: ‘::foo’ has not been declared
main.cpp: In function ‘void bar() [with T = int, U = char]’:
main.cpp:22:17: instantiated from here
main.cpp:17:2: error: dependent-name ‘A<T>::B’ is parsed as a non-type, but instantiation yields a type
main.cpp:17:2: note: say ‘typename A<T>::B’ if a type is meant
Если в комментарии к теме, на которую подписан USER упомянуть его через [usеr]USER[/usеr], то ему прийдёт два уведомления. Ошибка или так и задумано?
Тут решили провести в офисе эксперимент насколько хорошо работает обнаружение лиц в Ducati (подсистема на OMAP4, отвечающая за мультимедиа и алгоритмы). Перед вами GED, тот самый Galaxy Nexus с Android 4.0.3. Думаю, комментарии излишни.
Итак, встречайте: Galaxy Nexus. Он же Nexus Prime, он же Tuna, он же следующий GED для Android 4.0 «Ice Cream Sandwich» на OMAP4 4460. Ролик рекламный, седьмая вода на киселе, но таки лучше, чем вообще ничего. Краем уха продемонстрированы новые возможности камеры вроде обнаружения лиц и панорамной съёмки, видимо маркетологи посчитали это киллер-фичами.
Осторожно, флеш: http://www.youtube.com/android
P.S. По слухам, ICS должен уйти в OpenSource 5 ноября, так что можете начинать писать новость.
Только что попробовал собственными руками следующий GED от Google, тот самый Nexus Prime на OMAP4 с Android 4.0 aka «Ice Cream Sandwich». Такой себе плоский широкий кирпич, приятный на ощупь. Интерфейс повсюду анимированный и очень отзывчивый, не знал бы, что там Java — догататься было бы сложно. Экран большой 1280x720, насколько я понял, плотность пикселей уже достигает 250 DPI. Форм-фактор похож на Nexus S, с лёгкими отличиями.
Аппарат оставляет приятные впечатления. Если Google таки разродится им в октябре, обязательно возьму себе. Также ходят слухи, что одновременно с его выходом исходники ICS уйдут в OpenSource.
Только что сорока на хвосте принесла. На днях должен выйти новый Андроид, но Google, по всей видимости, решил оставить исходники себе. Как всегда, SDK и прочие инструменты для разработки будут, конечно же, доступны, а вот сами исходники ОС — увы. Какую цель они преследуют этим ходом можно только догадываться. Возможно, борятся с утечкой кода в другие проекты до выхода Honeycomb в мейнстрим или стремятся обеспечить безопастность низкоуровневой подсистемы, в которой, наверняка, ещё полно дыр (система сменила старшую версию и пока очень сырая). Хотя возможно и что Google хочет попридержать мелких поставщиков от распыления сил между 1.x, 2.x и 3.x, ведь новые версии вылетают буквально как пирожки, что догнать их и портировать инфраструктуру попросту нереально.
Если им снова моча в голову не стукнет, то дышащий в спину Андроид 3.1 «Icecream» должен быть открыт.
Вобщем, подтвердите/опровергните, кто там живёт поближе к Корпорации Добра.
http://www.3dnews.ru/news/glava-intel-predpochel-bi-android-a-ne-wp7
Очень примечательная цитата CEO Intel с пресс-конференции относительно Nokia, MeeGo и открытых платформ вцелом, особенно в свете последних панических настроений, нагнетённых Стефаном Ёлопом.
Пол Оттеллини также отметил, что его компания решила не участвовать в торгах за поддержку Nokia. Любопытное заявление сделал он и относительно выбора Windows Phone 7: «Я не принял бы решения, которое сделал он [Стивен Элоп]. Вероятно, я бы предпочёл Android, если бы был на его месте. MeeGo была бы наилучшей стратегией, но он решил, что не может позволить себе этого».
Также он сказал, что операторы всё ещё ждут выхода MeeGo, которая должна стать открытой экосистемой, конкурентной по отношению к Android. В Барселоне господин Отеллини также указывал, что открытые системы имеют большие преимущества: «Некоторые закрытые модели, конечно, сохранятся, потому что при таком подходе можно оптимизировать их работу, но в целом, если объединить возможности инженеров всего мира с разработчиками, открытые системы победят».
Есть конфигурация: Nvidia с двумя DVI-выходами, к которым подключёны: монитор (1920x1200) и проектор (1920x1080). С помощью утилиты от Nvidia они настроены как различные экраны (screens), вот так: http://imageupload.org/?di=14129811501011
1. Как запустить на этих экранах разные оконные менеджеры? На мониторе мне нужен kwin, а на проекторе — metacity. Предупреждая вопрос отвечу зачем — kwin не умеет определять размеры экрана, смещая картинку на проекторе, то-есть он думает, что на нём разрешение такое же, как и на мониторе.
2. Как сделать так, чтобы переключение фокуса между экранами выполнялось не подведением мыши к краю, а с помощью какой-то команды? Чтобы мышь всегда оставалась в пределах текущего экрана и не выходила за его пределы.
Часто корректоры воздерживаются от правки неподтверждённых новостей. Причина ясна, ведь тема всегда рискует отправить в мусорное ведро, а работа — коту под хвост. Как результат — темы на главную часто попадают в страшноватом виде (как, например, вот эта: http://www.linux.org.ru/news/novell/5891016), после чего спустя N времени до неё добирается авангард грамар-наци. И хорошо ещё, если через N, а то ведь бывает и через M.
Просьба моредаторам как-то сообщать, какие новости они собираются подтверждать в ближайшем будущем. Лучше всего — прикрепить тему в l-o-r, на которую будут подписаны только корректоры, чтобы приходили уведомления.
Предложения приветствуются.
Коротко: кириллический домен разбирается с ошибкой в LORCODE.
Проявилось в этой теме: http://www.linux.org.ru/news/russia/5873304
Как выглядит сейчас и как должно быть видно здесь: http://img265.imageshack.us/img265/1743/lorcode.png
← предыдущие | следующие → |