Конференция "Прочее" » А можно ли вообще при проектировании драйверов использовать ООП?
 
  • Игорь Шевченко © (24.01.09 16:54) [60]
    ketmar ©   (24.01.09 15:46) [59]


    > как минимум ту, которая не похожа на текущее используемое.
    >  хотя бы заглянуть — может, это какие-то идеи подкинет?


    Хотя бы заглянуть и изучать - это все-таки разные вещи, согласись.


    > ну Игорь, ну не надо же за всю сеть, а? %-)


    Да опыт, понимаешь, общения с той же сетью :)
    Рад бы не говорить, но если миллионы мух садятся на (пардон, холиварят на тему какой дистрибутив линукса круче и какой выбор пакетов при установке является единственно верным), то куда ж от впечатлений-то деваться ?

    Да и собственный 12-летний опыт экспериментов с линуксом тоже наверное чего-то значит.


    > а новые софтины ставить, кстати — это вообще к виндузятникам.
    >  у многих манечка тыкать в комп софты откуда не попядя и
    > неясного назначения.


    "Отучаемся говорить за всю сеть" :)
  • ketmar © (24.01.09 17:25) [61]
    >[60] Игорь Шевченко © (2009-01-24 16:54:00)
    >Отучаемся говорить за всю сеть

    а я и не говорил. сравни: «всем современным поклонникам линуксов» и «у многих». %-)

    ---
    Understanding is not required. Only obedience.
  • ketmar © (24.01.09 17:26) [62]
    >[60] Игорь Шевченко © (2009-01-24 16:54:00)
    а в принципе — GNU/Linux фекалия. но увы — выбирать опять не из чего. винду не люблю по идеологическим причинам.

    ---
    Understanding is not required. Only obedience.
  • Игорь Шевченко © (24.01.09 17:34) [63]
    ketmar ©   (24.01.09 17:26) [62]


    > винду не люблю по идеологическим причинам.


    Да ради Аллаха - я с твоими идеологическими причинами и не спорю вовсе. Просто Сервантеса почему-то вспомнил :)
  • ketmar © (24.01.09 17:48) [64]
    >[63] Игорь Шевченко © (2009-01-24 17:34:00)
    так и я тебя не убеждаю винду бросать. я к тому, что далеко не все линуксоиды всё время что-то пилят. просто школиё, которое пилит — оно орёт, а остальные молчат. вот и создаётся впечатление.

    ---
    All Your Base Are Belong to Us
  • Городской Шаман (24.01.09 18:56) [65]

    > test   (24.01.09 07:58) [55]
    >
    > Городской Шаман   (23.01.09 19:07) [49]
    > Это тот же MS который давно хочет написать обьектно-ориентированное
    > ядро?


    Угу они сделали еще хуже - хотят вынести разработку драйверов в User Mode (UMDF-технология), причём сделать так, чтобы драйвера можно было писать на .NET с интерпретируемым кодом. Так что .NET для разработки драйверов приветствуют, а вот С++ нет. Ну не идиоты?
  • Городской Шаман (24.01.09 19:03) [66]

    > ketmar ©   (24.01.09 15:46) [59]
    >
    > >[58] clickmaker © (2009-01-24 14:42:00)
    > >курим Objective C — мне уже поздно, я уже старый -)
    > >я уж как-нибудь остаток жизни промучаюсь на «всем не так»
    > )
    > тебя ж никто не заставляет на нём писать. я сам на C/C++
    > пишу сейчас, увы. однако ж почитать о нём стоит, я думаю.


    У Objective C основная проблема в том, что он не поддерживает библиотеки на С++, по причине которого его сложно использовать для чего-то серьезного на платформе Win32/64.
  • Anatoly Podgoretsky © (24.01.09 19:06) [67]
    > Городской Шаман  (24.01.2009 18:56:05)  [65]

    С++ чужой язык и МС сделало все чтобы похоронить его.
  • ketmar © (24.01.09 19:50) [68]
    >[66] Городской Шаман (2009-01-24 19:03:00)
    >У Objective C основная проблема в том, что он не поддерживает библиотеки на С++

    а у вертолёта основная проблема — отсутствие траков и заднего привода. ага.

    ---
    All Your Base Are Belong to Us
  • ketmar © (24.01.09 19:52) [69]
    >[67] Anatoly Podgoretsky © (2009-01-24 19:06:00)
    да если бы только его. у них даже C99 никак не поддерживается. как они пишут что-то для своего «компилятора» — мне не ясно. ладно, я даже не прошу вложеные функции, как в gcc, но хотя бы объявление переменных когда мне надо, а не в начале блока! но хотя бы стандартные заголовочные файлы! фиг там. m$ должна сдохнуть.

    ---
    Do what thou wilt shall be the whole of the Law.
  • Игорь Шевченко © (24.01.09 19:55) [70]
    ketmar ©   (24.01.09 19:52) [69]


    > но хотя бы объявление переменных когда мне надо, а не в
    > начале блока!


    Э...чего-то я не понял - это где нет объявлений не в начале блока ?


    > m$ должна сдохнуть.


    Ты собрался долго жить.
  • ketmar © (24.01.09 19:59) [71]
    >[70] Игорь Шевченко © (2009-01-24 19:55:00)
    >Э…чего-то я не понял — это где нет объявлений не в начале блока ?

    MSVS express 2008, win32 C. не C++. опапуленьки — не умеет. потому что с C99 никак не дружит. а в режиме C++ мой код не компилируется, потому что C++ нифига с C не совместим.

    ---
    Understanding is not required. Only obedience.
  • Anatoly Podgoretsky © (24.01.09 20:02) [72]
    > ketmar  (24.01.2009 19:52:09)  [69]

    Ну мне твоя боль за Микрософт но особо волнует.
    А вот МС решило, что С++ не нужен. И вряд ли сдохнет МС, а вот другое вероятно.

    ЗЫ: кстати и С в любых видах тоже особо не волнует.
  • Игорь Шевченко © (24.01.09 20:12) [73]

    > MSVS express 2008, win32 C. не C++. опапуленьки — не умеет.
    >  потому что с C99 никак не дружит. а в режиме C++ мой код
    > не компилируется, потому что C++ нифига с C не совместим.
    >


    Э...а что в простом С можно объявлять переменные где угодно ?
    типа for (int i = 0; ....) ?

    нафиг-нафиг такие примочки
  • ketmar © (24.01.09 20:37) [74]
    >[73] Игорь Шевченко © (2009-01-24 20:12:00)
    >Э…а что в простом С можно объявлять переменные где угодно ?

    нет, не где угодно. ты C++ написал. в C99 можно так:

    int a = 5;
    callMyCoolFunction(a);
    inf f = 10;
    callAnotherCoolFunction(f, a);
    int res = callAnotherCoolFunctionEx(f, a);



    а «компилятор» от m$ (как и всё, что они купили, а допилить не могут) до сих пор такого не понимает и ругается страшным матом. ну, я его тоже матом покрыл — шибко задолбусь исходники лопатить. и хидеры ему писать из стандарта. там даже несчастных unistd.h, stdint.h, inttypes.h нет. тьфу. к-к-к-компилятор, блин.

    ---
    All Your Base Are Belong to Us
  • ketmar © (24.01.09 20:38) [75]
    >[73] Игорь Шевченко © (2009-01-24 20:12:00)
    кстати, вот от такого объявления (в условиях if/for/while) я бы сильно не отказался, да…

    ---
    Do what thou wilt shall be the whole of the Law.
  • Городской Шаман (24.01.09 20:43) [76]

    > Игорь Шевченко ©   (24.01.09 20:12) [73]
    >
    > Э...а что в простом С можно объявлять переменные где угодно
    > ?
    > типа for (int i = 0; ....) ?
    >
    > нафиг-нафиг такие примочки


    Проверил на VSC++ 2005.
    for(int i = 0; i<10; i++);

    строка отлично скопилировалась. Что я делаю не так?
  • Городской Шаман (24.01.09 20:46) [77]

    > ketmar ©   (24.01.09 20:37) [74]
    > int res = callAnotherCoolFunctionEx(f, a);


    Не может такого быть. Давай пример чтобы проверить. Кстати результат возвращаемый функцией при таком присваивании(с определением переменной) должен быть или простого типа или иметь конструктор копирования, так как в данном случе происходит не присваивание, а копирование объекта.

    В данном случае всё должно работать.
  • Игорь Шевченко © (24.01.09 20:48) [78]
    ketmar ©   (24.01.09 20:37) [74]


    > int a = 5;
    > callMyCoolFunction(a);
    > inf f = 10;
    > callAnotherCoolFunction(f, a);
    > int res = callAnotherCoolFunctionEx(f, a);


    Ужос какой. Это в простом С ? Нафиг-нафиг
  • Городской Шаман (24.01.09 20:56) [79]

    > ketmar ©   (24.01.09 19:52) [69]
    >
    > >[67] Anatoly Podgoretsky © (2009-01-24 19:06:00)
    > да если бы только его. у них даже C99 никак не поддерживается.
    >  как они пишут что-то для своего «компилятора» — мне не
    > ясно. ладно, я даже не прошу вложеные функции, как в gcc,
    >  но хотя бы объявление переменных когда мне надо, а не в
    > начале блока! но хотя бы стандартные заголовочные файлы!
    >  фиг там. m$ должна сдохнуть.


    Компилятор настрой или файлы c в cpp переименуй.
    Если компилировать с ключом /TC (Compile as C code) то используется стандарт ANSI C, в котором нельзя так делать.
    По умолчанию стоит ключ /TP (Compile as C++ code), где допустимо объявление переменных после первой присваивающей инструкции.


    Кстати, С99 несовместим с C++, поэтому нет и поддержки. В принципе оно там и не нужно. Все что нужно есть и на С++(STL + boost).
 
Конференция "Прочее" » А можно ли вообще при проектировании драйверов использовать ООП?
Есть новые Нет новых   [134453   +32][b:0.001][p:0.001]