Тема: Тема для студентов-программистов и желающих им помочь

Ответить в теме
Страница 9 из 10 ПерваяПервая ... 7 8 9 10 ПоследняяПоследняя
Показано с 161 по 180 из 184
  1. Вверх #161
    Не покидает форум Аватар для Ull9
    Пол
    Мужской
    Адрес
    Мюнхен
    Сообщений
    19,028
    Репутация
    1490
    нет не так,
    скажу, что ответ тебе покажется парадоксальным и нелогичным,
    но это только на первый взгляд, если подумаешь дальше то согласишся что он очень логичен.

    подождем, может ребята ответят.
    кстати, это базовый принцип STL.
    Последний раз редактировалось Ull9; 13.12.2006 в 16:34.


  2. Вверх #162
    Не покидает форум Аватар для Ull9
    Пол
    Мужской
    Адрес
    Мюнхен
    Сообщений
    19,028
    Репутация
    1490
    все пошел пиво пить.

    мля, я в мухине уже полтора года, а все никак немогу все пиво перепробовать.

  3. Вверх #163
    User banned
    Пол
    Мужской
    Сообщений
    785
    Репутация
    20
    Очень классная книга для любителей JAVA. В ней есть почти все и качественным языком описано.

    http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764568744.html

  4. Вверх #164
    Постоялец форума Аватар для Яр
    Пол
    Мужской
    Адрес
    Odessa.Ua
    Возраст
    38
    Сообщений
    2,915
    Репутация
    173
    Цитата Сообщение от pavlentus
    Очень классная книга для любителей JAVA. В ней есть почти все и качественным языком описано.

    http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764568744.html
    Ivor Horton пишет довольно понятным языком.
    но конкретно эту книгу не читал..
    ~ Motivation is what gets you started. Habit is what keeps you going.

  5. Вверх #165
    User banned
    Пол
    Мужской
    Сообщений
    785
    Репутация
    20
    Еще очень удобная старничка для практической разработки:

    http://www.exampledepot.com/

    Можно потусоваться по всей jdk и найти пример или несколько по каждой библиотеке.

  6. Вверх #166
    Постоялец форума Аватар для Яр
    Пол
    Мужской
    Адрес
    Odessa.Ua
    Возраст
    38
    Сообщений
    2,915
    Репутация
    173
    Цитата Сообщение от Ull9
    подождем, может ребята ответят.
    кстати, это базовый принцип STL.
    С ходу ответить не смог, пришлось попытаться разобраться .
    Именно такие вопросы стимулируют к изучению чего-либо.

    Наверное, речь идёт о чём-то, похожем на предикаты. Это функция или объект-функция, которая возвращает bool. Используя предикаты, можно определять "правила" по которым объекты сравниваются (считаются эквивалентными). При этом объекты могут быть не равны (с точки зрения ==).

    Можно определить предикат, к примеру, для строк, который возвращает true, когда у строк неодинаковое количество символов.

    В таком случае "абв" и "абв" будут не эквивалентны, но равны.
    В то же время "абв" и "бвгде" будут эквивалентны, но не равны.

    Это можно использовать, например, в стандартных алгоритмах
    find_if(LB, LE, my_eq("абв"));

    таким образом,

    Для непосредственной проверки на равенство объектов, используем, к примеру, перегрузку ==.
    Для проверки на эквивалентность, задаём предикат, который может реализовываться совсем не так как ==. Используем для совмещения своих классов с STL. (например, для поиска в двух последовательностях элементов, эквивалентных по некому заданному признаку; определяя свой предикат для ассоциативных последовательностей, и тд.)
    Последний раз редактировалось Яр; 13.12.2006 в 21:45.
    ~ Motivation is what gets you started. Habit is what keeps you going.

  7. Вверх #167
    Не покидает форум Аватар для Ull9
    Пол
    Мужской
    Адрес
    Мюнхен
    Сообщений
    19,028
    Репутация
    1490
    ну.. так кто же ответит,
    что такое еквивалентность, чем она отличается от равенства? зачем и где что применяется?

  8. Вверх #168
    Постоялец форума Аватар для Яр
    Пол
    Мужской
    Адрес
    Odessa.Ua
    Возраст
    38
    Сообщений
    2,915
    Репутация
    173
    Ull9,
    мой ответ выше,
    ~ Motivation is what gets you started. Habit is what keeps you going.

  9. Вверх #169
    Не покидает форум Аватар для Ull9
    Пол
    Мужской
    Адрес
    Мюнхен
    Сообщений
    19,028
    Репутация
    1490
    правильно, но теперь последнее
    допустим у тебя есть некий предикат, как через него определяется эквивалентность?

  10. Вверх #170
    Постоялец форума Аватар для Яр
    Пол
    Мужской
    Адрес
    Odessa.Ua
    Возраст
    38
    Сообщений
    2,915
    Репутация
    173
    если я правильно понял
    допустим, предикат это predicate
    наверное, так:

    if ( predicate(a,b) && predicate(b,a) )
    ~ Motivation is what gets you started. Habit is what keeps you going.

  11. Вверх #171
    Не покидает форум Аватар для Ull9
    Пол
    Мужской
    Адрес
    Мюнхен
    Сообщений
    19,028
    Репутация
    1490
    ок
    если существует предикат
    p(const T&,const &T), то
    два элемента x и y считаются эквивалентными если
    !p(x,y)&&!p(y,x)

    и именно это условие используется для поиска в ассоциативном контейнере.
    и не в коем случае не
    operator==

  12. Вверх #172
    Постоялец форума Аватар для Яр
    Пол
    Мужской
    Адрес
    Odessa.Ua
    Возраст
    38
    Сообщений
    2,915
    Репутация
    173
    Спасибо за дискуссию .

    я ушёл спать, завтра рано вставать\
    ~ Motivation is what gets you started. Habit is what keeps you going.

  13. Вверх #173
    Частый гость Аватар для THRESHE
    Пол
    Мужской
    Адрес
    Одесса
    Сообщений
    978
    Репутация
    39
    Можно ли с помощью MFC использовать новый вид элементов управления?
    Использование темы ХР

  14. Вверх #174
    Цитата Сообщение от pavlentus
    Пока сам себе не поможешь никто тебе не поможет
    ну, так не надо. По многим вопросам я хожу в форум codeguru.com. Зачастую попадаются весьма дельные ответы.

  15. Вверх #175
    Цитата Сообщение от Suicide
    насколько реально выучить дома java ajax ?
    и как доказать работодателю что ты это знаешь без диплома
    Дома реально выучить все.
    Лучше всего найти хостинг, который это поддерживает
    и сделать любой сайт, например, со своим резуюме.
    Работодателю просто говоришь: "А вот мой сайт" и показываешь ссылку в интернет.
    Впрочем, работодатель обычно не дурак, сам узнает:
    на собеседовании обязан присудсвтовать специалист,
    способный оценить уровень знаний кандидата.
    Исключение - маленькие не софтверные фирмы.

  16. Вверх #176
    Новичок Аватар для Vic87
    Пол
    Мужской
    Сообщений
    16
    Репутация
    10
    Цитата Сообщение от THRESHE
    Можно ли с помощью MFC использовать новый вид элементов управления?
    Использование темы ХР
    Как сделать XP-интерфейс в программе.

    A: (SUnteXx & Andruishka)
    Оригинальная ссылка: нету


    Написанный ниже текст предназначен только для Windows XP (и ее продолжений)

    Самый простой вариант - это написать манифест, позволяющий Windows XP на стадии загрузки программы подключить нужную версию библиотеки разделяемых элементов (common controls), и занести его в ресурсы.

    Q: Что такое манифест?
    A: Манифест(manifest) - это текст на языке XML, описывающий нашу программу и библиотеки, необходимые для ее работы. В данном случае мы рассматриваем манифест для подключения шестой библиотеки common controls, включенной в состав Windows XP.

    Лирическое отступление
    Здесь нужно сказать, почему для подключения этой самой библиотеки в Windows XP нужно предпринимать какие-либо действия. Ведь для подключения этой же библиотеки в предыдущих версиях Windows никаких усилий не требовалось: достаточно подключить в проект библиотеку comctl32.lib и инициализировать ее с помощью функции InitCommonControls(), прописанной в commctrl.h
    Дело в том, что в Windows XP существует две разные библиотеки common controls: одна "старая", версии 5.80, которая входит в поставку Internet Explorer 5.5 и которая может быть установлена на любую версию Windows, и "новая" версия - 6.0, которая и обеспечивает XP-интерфейс, т.е. поддержку визуальных стилей (visual themes)
    Вы можете спросить, а почему бы этим странным людям из Microsoft просто не заменить бы "старую" версию на "новую"?
    Дело в том, что до выхода Windows XP часть оконных классов - так называемые базовые классы окон - кнопки, статики (static text), поля ввода (editbox), скроллбары, списки и комбобоксы - хранилась в основной библиотеке, отвечающей за элементы пользовательского интерфейса - user.exe (Да, да, именно user.exe, а не user32.dll) Теперь же, все они "переехали" (нет, только новые версии - совместимость, понимаете ли) в библиотеку comctl32.dll
    Из-за этого "старая" библиотека оставлена на своем прежнем месте, а новая засунута немножко дальше. И чтобы извлечь именно новую версию и нужен манифест.

    Формат манифеста
    Манифест лучше всего создавать как внешний файл. Назвать его можно как угодно, к примеру "data.bin". Создав файл с таким именем, запишите в него следующий текст:

    Код:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    <assemblyIdentity
        version="5.1.0.0"
        processorArchitecture="x86"
        name="Author.Program_Name"
        type="win32"
    />
    <description>Program Description</description>
    <dependency>
        <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="x86"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
    </dependency>
    </assembly>
    Лирическое отступление
    Текст приведенный на этой странице можно копировать прямо из FAQ в какой-нибудь текстовый редактор, поддерживающий сохранение в текстовом формате, например в notepad.

    Написали? Да у вас успехи в программировании! Теперь измените имя программы в 6-ой строке name="..." (не используйте пробелов, рекомендуется форма "Author.ProgramName" и описание программы в 9-ой между тэгами и (тут уже можно вставлять пробелы).

    Подключение манифеста к приложениям.
    Вообще, подключать манифест можно как через ресурсы приложения, так и используя внешний манифест. Внешний манифест подключается путем создания внешнего файла с именем типа "application.exe.manifest", где "application.exe" - имя исполняемого модуля вашей программы. Он помещается в одну папку с исполняемым модулем. Также можно использовать две версии манифеста: в виде ресурсов и в виде внешнего файла. В этом случае преимущество имеет дисковая версия манифеста.

    Манифест может быть записан в ресурсы приложения (в новых SDK есть описание ресурса с именем RT_MANIFEST, именно так его обозвали в Visual Studio .NET. Для использования манифеста в Visual Studio 6.0 и во всех остальных системах нужно записывать манифест в ресурс с номером 24 (именно с номером, а не с именем "24")

    Подключение манифеста к исполняемым модулям.
    Данный параграф относится к большинству случаев создания XP-интерфейса. Он распространяется на приложения Windows и показывает, как подключить манифест, используя ресурс манифеста.
    Лезем в ресурсы приложения (если кто не знает, никогда не писал программы под Windows или не использовал в них ресурсы - то это такой файл с расширением *.RC) и пишем в файл ресурсов следующую строку:

    1 24 MOVEABLE PURE "data.bin"

    А теперь собираем приложение и наслаждаемся новым интерфейсом программы.

    Q: Упс... прога выдает "ошибку" и не запускается... Что делать?
    A: (SUnteXx) В моем случае надо было добавить в опции линковщика ( Project -> Settings -> Link -> Object/Library Modules ) вот эту библитотеку: comctl32.lib. Если и это не помогло, то в самом начале программы вызываем функцию InitCommonControls (без параметров) которая прописана commctrl.h
    A: (Anduishka) А в моем случае надо было переписать сам файл манифеста. Я выкинул из него все символы перевода строки. Поэтому, я рекомендую писать файл манифеста в одну строку.

    Подключение манифеста к динамическим библиотекам, используемым как In-Process сервер.
    Этот способ был использован для создания XP-интерфейса в библиотеке расширения Проводника. Нужно было создать дополнительную страничку свойств файла. В этом случае описанный выше способ не срабатывает. Простое подключение манифеста в ресурсы библиотеки тоже не подходит. В этом случае необходима модификация кода библиотеки.
    Для подключения манифеста в DLL сделать нужно следующее:
    Добавить в файл ресурсов следующую строку

    2 24 MOVEABLE PURE "data.bin"

    то есть, нужно подключить манифест с идентификатором ресурса ID=2. Далее, надо либо сделать определение ISOLATION_AWARE_ENABLED в главном файле библиотеки, но до подключения к нему файла "windows.h" , то есть, после модификации фрагмент кода программы будет выглядеть так :

    #define ISOLATION_AWARE_ENABLED
    #define "windows.h"

    Однако, при использовании MFC, файл "windows.h" подключается где-то глубоко в недрах библиотеки, поэтому определение можно сделать в опциях компилятора (Project -> Settings -> C/C++ -> Preprocessor definitions)
    Теперь, компилируем программу, используя новую версию SDK (у меня стоит версия SDK от июля 2001), так как в старой версии, поставляемой, скажем, с Visual Studio 6.0, определение ISOLATION_AWARE_ENABLED отсутствует. Да, и еще: для использования этого определения надо установить _WIN32_WINNT в 0x501, т.е. включить поддержку Windows XP. Строка, описывающая эту директиву должна выглядеть так:

    #define _WIN32_WINNT 0x501

    Подключение манифеста к приложениям, используемым как расширения Панели Управления.
    На расширения панели управления распространяются те же правила, что и на обычные приложения. Однако, манифест в случае его размещения во внешнем файле будет иметь имя "application.cpl.manifest", а при размещении в ресурсах приложения, ему следует присвоить ID=123.

  17. Вверх #177
    Частый гость Аватар для THRESHE
    Пол
    Мужской
    Адрес
    Одесса
    Сообщений
    978
    Репутация
    39
    Пасиба за ответ, но я уже 2 недели как разобрался с манифестами (почитал на http://www.go4expert.com/forums/showthread.php?t=754 )

  18. Вверх #178
    Живёт на форуме Аватар для Alochka
    Пол
    Женский
    Адрес
    Redwood city, CA
    Возраст
    50
    Сообщений
    3,024
    Репутация
    1380
    Отдам книги по программированию, список тут
    Просто выкинуть рука не поднимается, может, кому-нибудь нужно.
    Если никто не заберет за пару недель, то выкину.
    18.09.2003
    08.04.2010

  19. Вверх #179
    Новичок Аватар для Скайчег
    Пол
    Мужской
    Сообщений
    43
    Репутация
    12
    Ничего полезного для себя в списке не увидел... Жалко книжечки, может в библиотеке какой-то возьмут. У самого куча хлама, только художественного, но выбросить совесть не позволяет, может как нибудь перечитаю на старости лет.
    Life is what happens while you are busy making other plans

  20. Вверх #180
    Не покидает форум Аватар для victor_im
    Пол
    Мужской
    Адрес
    Krakow
    Сообщений
    9,229
    Репутация
    4657
    Цитата Сообщение от Ull9 Посмотреть сообщение
    ну.. так кто же ответит,
    что такое еквивалентность, чем она отличается от равенства? зачем и где что применяется?
    эквивалентность в терминах STL тождественна такому выражению
    !( a < b ) && !(b < a )
    если в башне дребедень....


Ответить в теме
Страница 9 из 10 ПерваяПервая ... 7 8 9 10 ПоследняяПоследняя

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения