Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Динамический вызов методов 
:(
    Опции темы
Тигер
Дата 19.4.2010, 19:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 4.4.2010

Репутация: нет
Всего: нет



надоело писать често такое
Код

switch(methods[method]){
        case MPP:
            Method::MPP();
            break;
     case MLP:
         Method::MLP();
         break;
     case MT:
         Method::MT();
         break;
        case MP:
         Method::MP();
         break;
     case MCP:
         Method::MCP();
         break;
        default:
            Error("Method '%s' not defined",method.c_str());
            return;
        }

нельзя ли как нибудь динамически вызвать нужный метод?

ещё вопрос, нельзя ли как-нибудь работать со свичём без enum? напрямую со значениями
PM MAIL   Вверх
kemiisto
Дата 19.4.2010, 19:58 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Дикий Кот. =^.^=
****
Награды: 1



Профиль
Группа: Участник Клуба
Сообщений: 3292
Регистрация: 29.7.2007

Репутация: 5
Всего: 160



Цитата(Тигер @  19.4.2010,  20:56 Найти цитируемый пост)
надоело писать често такое

А смысл какой у такой конструкции?


--------------------
PM MAIL WWW GTalk Jabber   Вверх
azesmcar
Дата 19.4.2010, 20:03 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Тигер

map + указатель на функцию.
PM   Вверх
toxx
Дата 19.4.2010, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 653
Регистрация: 4.3.2009
Где: НН

Репутация: 4
Всего: 13



А может быть имеется в виду чтото такое?
Код

Method *pMethod=new  Method;
pMethod->MPP();
....



Это сообщение отредактировал(а) toxx - 19.4.2010, 20:17
PM MAIL   Вверх
azesmcar
Дата 19.4.2010, 20:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(toxx @  19.4.2010,  20:16 Найти цитируемый пост)
А может быть имеется в виду чтото такое?

Фабрика команд, более усложненный случай map+указателя на функцию.
PM   Вверх
ИванМ
Дата 19.4.2010, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1260
Регистрация: 19.6.2006
Где: СПб

Репутация: 3
Всего: 23



Если константы идут подряд можно вместо map'а использовать обычный массив.
PM MAIL   Вверх
azesmcar
Дата 19.4.2010, 20:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(ИванМ @  19.4.2010,  20:39 Найти цитируемый пост)
Если константы идут подряд можно вместо map'а использовать обычный массив. 

можно даже если не идут, тут вопрос что важнее. Если к примеру ключ умещается в short то вполне реально создать массив размером в 65536 элементов, но взамен получить константную сложность поиска. Я так делал в одной низкоуровневой библиотеке, прирост был фантастический на аппарате с процессором 70mhz.
PM   Вверх
Тигер
Дата 19.4.2010, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 4.4.2010

Репутация: нет
Всего: нет



azesmcar
дык эмм. эту карту сначало заполнить надо.
вообщем, как реализуются паттерны фабрика или serviceLocator в с++

Это сообщение отредактировал(а) Тигер - 19.4.2010, 22:10
PM MAIL   Вверх
azesmcar
Дата 19.4.2010, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(Тигер @  19.4.2010,  22:08 Найти цитируемый пост)
дык эмм. эту карту сначало заполнить надо.

 smile ничего не поделаешь, не умеет C++ угадывать что нужно пользователю smile 

Цитата(Тигер @  19.4.2010,  22:08 Найти цитируемый пост)
как реализуются паттерны фабрика 

http://forum.vingrad.ru/forum/topic-266893...tml#st_0_view_0
PM   Вверх
Тигер
Дата 19.4.2010, 22:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 86
Регистрация: 4.4.2010

Репутация: нет
Всего: нет



ну тоже через map
а нет какой-нибудь функции каторая проверит существует ли метод в классе?

Добавлено через 3 минуты и 2 секунды
гуглил гуглил. из подтекста виднелось что это можно сделать при помощи dll?
заодно и динамическую подгрузку модулей?
PM MAIL   Вверх
azesmcar
Дата 19.4.2010, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(Тигер @  19.4.2010,  22:23 Найти цитируемый пост)
а нет какой-нибудь функции каторая проверит существует ли метод в классе? 

нет, в run-time эта информация недоступна.
PM   Вверх
azesmcar
Дата 20.4.2010, 08:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 52
Всего: 211



Цитата(Тигер @  19.4.2010,  22:23 Найти цитируемый пост)
гуглил гуглил. из подтекста виднелось что это можно сделать при помощи dll?

В DLL можно smile через GetProcAddress.
PM   Вверх
GoldFinch
Дата 20.4.2010, 08:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 6
Всего: 26



пример "саморегистрирующийся" фабрики есть у Александреску в "Современном проектировании"

выглядит это примерно так
Код

bool UNIQUE_NAME = register_method_in_map(globalMethodsMap, &method);
R method(T1 arg1, ...)
{
   .....
}


регистрацию метода в карте можно завернуть в макрос.

более полный пример 
http://forum.vingrad.ru/forum/topic-273518...atch/index.html
(пункт 2)

Добавлено через 1 минуту и 19 секунд
также, методы можно сделать виртуальными, и использовать какой-нибудь хак с таблицей виртуальных методов
PM MAIL ICQ   Вверх
Owen
Дата 20.4.2010, 09:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 71
Регистрация: 5.7.2006
Где: Русь

Репутация: нет
Всего: нет



А чем не подходит передавать указатель на функцию/метод?

Код

class Test
{
public:
  void Foo( )
  {
  }
};

Test* var;

void Func( void(Test::*func)() )
{
  (var->*func)( );
}

int main( )
{
  var = new Test( );
  Func( &Test::Foo );
  return 0;
}

PM ICQ   Вверх
djamshud
Дата 20.4.2010, 10:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



Из текущей программы или динамически слинкованной библиотеки можно получить (и проверить на существование) функцию по string-имени. В POSIX.1-2001 это dlopen, dlsym и т.д., в винде какие-то winAPI-шные аналоги, кроме того на гуглокоде есть реализация dl-интерфейса под винду. Вытаскиваемая функция должна быть экспортируемой extern "C", с++-ные методы так не вытащить.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
mes
Дата 20.4.2010, 10:08 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(Owen @  20.4.2010,  08:18 Найти цитируемый пост)
А чем не подходит передавать указатель на функцию/метод?

имхо : ну прежде всего тем, что автор ищет не решение задачи, а замену свитчу. А так как последнее без первого предполагает массу вариантов, то к цели придет, к сожалению, не скоро..


--------------------
PM MAIL WWW   Вверх
GoldFinch
Дата 20.4.2010, 10:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 6
Всего: 26



djamshud, покажи, как методы с extern "C" экспортировать
алсо прописывать неймспейс функции в ее имени - зло
PM MAIL ICQ   Вверх
djamshud
Дата 20.4.2010, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



GoldFinch, к методам extern "C" вообще не применим, кажется я писал об этом.

>алсо прописывать неймспейс функции в ее имени - зло 

Где я это предлагал?


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
GoldFinch
Дата 20.4.2010, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 6
Всего: 26



djamshud, да, действительно, писал.

насчет неймспейсов - чтобы сохранить имя при С компоновке, придется заменять все имена функций на
namespace1_namespace2_...namespaceN_functionname,
иначе они могут начать пересекаться с другими именами
PM MAIL ICQ   Вверх
djamshud
Дата 20.4.2010, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



Неймспейсы - весьма надуманная проблема, отчасти связанная с неумением придумывать хорошие имена. Сишники всю жизнь как-то без неймспейсов хорошо обходятся, главное давать емкие и в то же время короткие названия для интерфейсных функций, а внутренние прятать в static.

По сабжу же: либо, как уже предлагали, заполнить таблицу соответствия "строка"-"функция/метод", либо, если лень или по другим неозвученным пока причинам, тянуть С-функции и перекладывать ответственность за соответствие типов с компилятора на себя.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
mes
Дата 20.4.2010, 19:47 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250




 smile 

Цитата(djamshud @  20.4.2010,  12:09 Найти цитируемый пост)
Неймспейсы - весьма надуманная проблема, отчасти связанная с неумением придумывать хорошие имена.

скорей наоборот, не любовь к неймспейсам из за того что многие не умеют их готовить smile хотя С++ сам частично в этом виноват, точнее его кривость в этой области.. Но пару условных договоренностей и плюсы от неймспейсов сразу преобладают над минусами.
smile

Цитата(djamshud @  20.4.2010,  12:09 Найти цитируемый пост)
. Сишники всю жизнь как-то без неймспейсов хорошо обходятся

А наши бабушки и дедушки обходились без компа .. Долой прогресс и удобства. 
 smile 


--------------------
PM MAIL WWW   Вверх
djamshud
Дата 20.4.2010, 20:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



Оффтопик на оффтопике.

Я не говорил, что неймспейсы зло и вообще не нужны. Конечно нужны и конечно удобны. Просто если задача встает так, что они мешают, нет совершенно никакой проблемы от них отказаться, и именно эта "проблема" и связана с привычкой выдумывать длиннющие названия, разложенные по иерархии неймспейсов и классов, т.е. с неумением кратко и емко выразить смысл сущности. Хороший пример жизни без неймспейсов - POSIX, интерфейсы ядра Linux. Плохой - winAPI.

>А наши бабушки и дедушки обходились без компа .. Долой прогресс и удобства.

Си цветет и пахнет, а бабушки с дедушками уже только пахнут:D. Фу, злой юмор какой-то.

Это сообщение отредактировал(а) djamshud - 20.4.2010, 20:00


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
mes
Дата 20.4.2010, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(djamshud @  20.4.2010,  19:00 Найти цитируемый пост)

Си цветет и пахнет, 

угу, только отсутствие неймспесов, и обилие макросов в библиотеках очень часто становится костью поперек горла..
smile



--------------------
PM MAIL WWW   Вверх
djamshud
Дата 20.4.2010, 20:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



>угу, только отсутствие неймспесов, и обилие макросов в библиотеках очень часто становится костью поперек горла..

Это проблема не языка, а специалистов, которые готовили плохие библиотеки. Хорошие ведь тоже есть:).


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
mes
Дата 20.4.2010, 20:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(djamshud @  20.4.2010,  19:08 Найти цитируемый пост)
Это проблема не языка, а специалистов, которые готовили плохие библиотеки. Хорошие ведь тоже естьsmile. 

языка тоже.. он не позволяет сделать так как хочется - чисто и красиво smile

Добавлено через 24 секунды
чего то мы сильно ушли в оффтоп ))



--------------------
PM MAIL WWW   Вверх
djamshud
Дата 20.4.2010, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



Не соглашусь. Язык позволят ровно то, что он позволяет. Вы же, думаю, не считаете к примеру отсутствие удобных средств функционального программирования недостатком ассемблера? А вот безграмотность специалистов не позволяет им выработать нужный подход к построению программы, чтобы в итоге получилось так, как хочется -  чисто и красиво. И на с++ есть ужасные библиотеки, и на пистоне, и, думаю, на любом языке.

Добавлено через 1 минуту и 6 секунд
>чего то мы сильно ушли в оффтоп ))

Придет модератор и порежет или отправит в холиворы:).


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
mes
Дата 20.4.2010, 20:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(djamshud @  20.4.2010,  19:26 Найти цитируемый пост)
Не соглашусь. Язык позволят ровно то, что он позволяет.

т.е. развивать язык и не стоит ?  и, в частности,  обещанных новшеств С++ вы не ждете ?

Цитата(djamshud @  20.4.2010,  19:26 Найти цитируемый пост)
Вы же, думаю, не считаете к примеру отсутствие удобных средств функционального программирования недостатком ассемблера? 

ну до функц. прогр. асму далеко, но в целом Вы правы, считаю.. 

хоть я асм последний раз в живую видел в "прошлой жизни", но уверен, что за время развития языка куча удобных инструментов с ЯВУ сползала на асм.

Добавлено @ 21:00
Цитата(djamshud @  20.4.2010,  19:26 Найти цитируемый пост)
И на с++ есть ужасные библиотеки, и на пистоне, и, думаю, на любом языке.

речь не о плохих специалистах,  таких везде хватает, а о возможностях языка, (не)позволяющих специалисту сделать чисто и красиво smile


Это сообщение отредактировал(а) mes - 20.4.2010, 21:00


--------------------
PM MAIL WWW   Вверх
djamshud
Дата 20.4.2010, 23:38 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



>т.е. развивать язык и не стоит ?  и, в частности,  обещанных новшеств С++ вы не ждете?

Развивать стоит, новшеств не жду, боле того я о них слышал лишь краем уха. Но как стандарт примут, так и посмотрю, чем стоит воспользоваться, а чем нет. Я прежде всего исхожу из позиции, что нужно эффективно применять то, что есть. Да и нынешние некоторые возможности плюсов не использую: stl, хитросплетенные шаблоны (привет Александурску), исключения... может что еще забыл.

Но развитие само по себе не значит, что вчера было плохо, а завтра станет хорошо. Это просто эволюция. Не стоит сидеть, смотреть в будущее и ждать, когда же снизойдет благодать.

>речь не о плохих специалистах,  таких везде хватает, а о возможностях языка, (не)позволяющих специалисту сделать чисто и красиво

Если язык не позволяет программисту решить задачу "красиво", значит программист выбрал не тот язык или не правильно спроектировал свое решение под этот. Значит это плохой специалист. Микроскопом гвозди не забивают.

Еще раз повторю мысль: если в языке нет какого-то ништячка, то это не делает автоматически язык плохим, более того это не есть недостаток, так же как и из-за отсутствия дополнительной пары рук человек не становится непригодным например к физической работе. А вот станет ли он от этого лучше - еще не факт:).


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
mes
Дата 21.4.2010, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(djamshud @  20.4.2010,  22:38 Найти цитируемый пост)
Еще раз повторю мысль: если в языке нет какого-то ништячка, то это не делает автоматически язык плохим, 

с такой постановкой согласен.. но я высказывался против насчет другого, а именно :
 если в языке нет инструмента (и его невозможно добавить вручную) для чего то нужного в русле специализации этого языка, то это минус языку.

Цитата(djamshud @  20.4.2010,  22:38 Найти цитируемый пост)
Если язык не позволяет программисту решить задачу "красиво"

проблема в том, что программа это решение  совокупности задач, и программисту приходится выбирать язык под наиболее ответственные задачи, а остальное решать как получится.

насчет неймспейсов, если быть объективными, то здесь "вина" не самого языка..  язык С идеологически "повторяет" модель принятую в системе, а в ней они не приняты и для введения в язык пришлось бы делать обходные пути ( как это сделано в С++), а это бы нарушило бы чистоту языка..


Цитата(djamshud @  20.4.2010,  22:38 Найти цитируемый пост)
Я прежде всего исхожу из позиции, что нужно эффективно применять то, что есть. 

Цитата(djamshud @  20.4.2010,  22:38 Найти цитируемый пост)
Да и нынешние некоторые возможности плюсов не использую: stl, 

Что то эти два высказывания между собой не вяжутся...  smile 
я так понимаю, что работаете на С++ в стиле С_с_классами ?.. а что ж тогда не на plain С ?



--------------------
PM MAIL WWW   Вверх
djamshud
Дата 21.4.2010, 11:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



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

А вот и не правильно. Во-первых ничто не мешает программе быть написанной на нескольких языках, приспособленых к задачам. Во-вторых, если программист решает какие-от задачи "как получится" (как правило в лоб, как мне кажется), скорее всего ему просто было лень или не хватило ума представить решение в терминах того языка, на котором он ее решает.

>насчет неймспейсов,..

полностью согласен. Это причина по которой их нет и, думаю, не появится.

>Что то эти два высказывания между собой не вяжутся

Возможноsmile. Я обычно работаю (в том числе в рамках одного проекта) на С, С++ с неймспейсами, классами, (множественным) наследованием, RTTI и своих скриптах. По мере увелечения абстрактности и снижения требований к производительности (под)задачи выбирается следующий язык.

>а что ж тогда не на plain С ?

На plain C неудобно писать в объектно-ориентированном стиле, он для этого не особо предназначен.

Upd.
В плюсах еще шаблоны функций, классов и методов использую.

Это сообщение отредактировал(а) djamshud - 21.4.2010, 12:08


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
GoldFinch
Дата 21.4.2010, 11:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Завсегдатай
Сообщений: 2141
Регистрация: 30.11.2008

Репутация: 6
Всего: 26



Цитата(djamshud @  21.4.2010,  11:40 Найти цитируемый пост)
На plain C неудобно писать в объектно-ориентированном стиле, он для этого не особо предназначен.

OpenSSL написана на plain C в ОО стиле
PM MAIL ICQ   Вверх
djamshud
Дата 21.4.2010, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



>OpenSSL написана на plain C в ОО стиле 

GLIB тоже, и что? На си можно сделать практически любой прыжок изподвыподверта,.. но зачем?


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
mes
Дата 21.4.2010, 12:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 79
Всего: 250



Цитата(djamshud @  21.4.2010,  10:40 Найти цитируемый пост)
ничто не мешает программе быть написанной на нескольких языках

Мешает, отсутствие возможности легкой и безпроблемной линковки, без дополнительных костылей-биндингов.
Да и та же проблема с именами, с которой начался оффтопик.. и т.д.

Добавлено через 3 минуты и 37 секунд
Цитата(djamshud @  21.4.2010,  10:40 Найти цитируемый пост)
на С, С++ с неймспейсами... своих скриптах

сразу видно что язык выбран под задачу ! smile

Добавлено через 5 минут и 12 секунд
и все ж чем не угодила стл? 


--------------------
PM MAIL WWW   Вверх
djamshud
Дата 21.4.2010, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Пердупержденный
***


Профиль
Группа: Завсегдатай
Сообщений: 1655
Регистрация: 23.11.2009

Репутация: 4
Всего: 39



mes, один программный продукт не обязан быть заточен в одном исполняемом файле; в одну кучу линковать все - делать мегакомбайн.

>сразу видно что язык выбран под задачу

Наверное это была ирония, но я ее не понял:).

>и все ж чем не угодила стл?

Объективно - ничем, библиотека хорошая. Но как-то давно пошло, что успешно и быстро пишу без нее. И еще очень не нравится идея "итератор на все", хотя опять же объективно она хороша.


--------------------
'Cuz I never walk away from what I know is right
Alice Cooper - Freedom
PM   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.4474 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.