Вы ошибаетесь. По крайней мере иконки Internet Explorer и Visual Studio охраняются авторским правом и не могут быть загружены на Викисклад (хранилище свободных фалов для Википедии). Это может не относиться к синей букве W, зелёной x и красной O (Word, Excel, Opera), поскольку простые геометрические фигуры и текст не подлежат охране и находятся в общественном достоянии.
Кстати, ещё позавчера боты взяли рубеж в 666666 статей. Получилось довольно странно, т. к. счётчик на главной всегда немного тормозит и в результате ботовладельца предупредили и приближении к 666666 уже после взятия рубежа. Неосознанные обоюдные действия программного обеспечения MediaWiki и бота привели к тому, что обычные люди были просто лишены возможности конкурировать за написание 1/3-миллионной статьи.
Мда, на ускорение посмотреть не получилось… Проц Core 2 Duo E8500, ось 32-бит. С включённым openmp неоптимизированный вариант выполнился нормально, оптимизированный застрял сам в себе. После отключения openmp оба варианта выполнились, но дали разные результаты. Тестировалось в gcc 4.4.3 и ~4.5.0.
Для выполнения предложенной задачи необходимо и достаточно 500 байт на классической 32-битной платформе. Так что точно в музей =).
Ещё: к пункту 8 скорее всего стоит дописать замену int *i на int32_t *i.
Задача-минимум состоит в том, чтобы код компилировался компиляторами, работающими по стандарту, не производил утечек и обеспечивал одинаковую работу на разных платформах/архитектурах.
> Любопытно было бы узнать, а какой ответ ожидали они?
Вероятно, достаточно бы было ответа про:
1) В C++ main должен возвращать int
2) В списках инициализаторов Bar должен быть Foo(что-то там), поскольку у Foo нет конструктора без обязательных параметров.
3) В Foo должен быть конструктор копирования
4) В Bar должен быть конструктор неявного преобразования в Foo (привет valgrind)
5) Для реализации пункта 4 скорее всего понадобится указать спецификатор доступа к родительскому классу class Bar: public Foo
6) В ~Foo и ~Bar должны быть delete[], а не delete
7) Проверки на успешность выделения памяти? fputs("Доставьте ваш комп в музей", stderr); Тут почти наверняка они хотели увидеть что-то про auto_ptr и SFINAE
8) В качестве параметров конструкторов должно быть size_t, а не int (привет статические анализаторы)
9) Виртуальные деструкторы: см. пост.
Хотя, быть может, они хотели увидеть переделанный код на std::vector и отсутствие элементов-данных с одинаковыми именами. Чёрт их разберёт.
Ни в коем случае.
В лицензии на ClamAV ничего не сказано о необходимости упоминать ClamAV в названии производных продуктов. Сама ClamAV являясь теоретически системой обнаружения текста не пригодна для использования конечным пользователей. А вот Антивирус Попова уже готовое приложение — Антивирус с такими функциями как сканирование файлов и почты «на лету», определение свыше 700 000 вирусов, червей, троянов, сообщений фишинга, анализ сжатых файлов RAR (2.0, 3.0), Zip, Gzip, Bzip2 и выгрузкой результата в txt-файлы. Вот это уже «антивирус»! в не просто приложение дающее анализирующее исполняемый файл и производящие результат анализа с сохранением в тектовом файле.
А вот с PHP вы не угадали. Есть ограничение на использование аббревиатуры PHP в названиях продуктов. Что же касается упоминания, следующее уведомление должно быть включено в любую форму распространяемых материалов:
[x] Искать порно
На крайний случай графика будет переложена на Mesa, но это всё равно быстрее.
Просто сотрудники HP уже знакомы со спецификой работы Почты России.
Ещё: к пункту 8 скорее всего стоит дописать замену int *i на int32_t *i.
Задача-минимум состоит в том, чтобы код компилировался компиляторами, работающими по стандарту, не производил утечек и обеспечивал одинаковую работу на разных платформах/архитектурах.
Вероятно, достаточно бы было ответа про:
1) В C++ main должен возвращать int
2) В списках инициализаторов Bar должен быть Foo(что-то там), поскольку у Foo нет конструктора без обязательных параметров.
3) В Foo должен быть конструктор копирования
4) В Bar должен быть конструктор неявного преобразования в Foo (привет valgrind)
5) Для реализации пункта 4 скорее всего понадобится указать спецификатор доступа к родительскому классу class Bar: public Foo
6) В ~Foo и ~Bar должны быть delete[], а не delete
7) Проверки на успешность выделения памяти? fputs("Доставьте ваш комп в музей", stderr); Тут почти наверняка они хотели увидеть что-то про auto_ptr и SFINAE
8) В качестве параметров конструкторов должно быть size_t, а не int (привет статические анализаторы)
9) Виртуальные деструкторы: см. пост.
Хотя, быть может, они хотели увидеть переделанный код на std::vector и отсутствие элементов-данных с одинаковыми именами. Чёрт их разберёт.
А вот с PHP вы не угадали. Есть ограничение на использование аббревиатуры PHP в названиях продуктов. Что же касается упоминания, следующее уведомление должно быть включено в любую форму распространяемых материалов: