Тип указателя на функцию-член.

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Аватара пользователя
Сионист
Сообщения: 1211
Зарегистрирован: 31 мар 2014, 06:18

Romeo писал(а):Самый простой пример, с которым сам сталкивался. Переход со студийного компилятора на IBM-овский, так как последний намного лучше оптимизирует код и может разогнать определённые участки в сотни раз, по сравнению с той же студией. Например, умеет работу с STL-евским вектором разворачивать в вызовы MMX команд процессора.
Так а зачем тогда нужен студийный?
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Ну так сначала об это не задумывались. Фигачили проект на студии годами. А потом пришла команда перейти на IBM-компилятор.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Аватара пользователя
Сионист
Сообщения: 1211
Зарегистрирован: 31 мар 2014, 06:18

Так если с ним быстрей, то при чём здесь команда? Сразу надо было на нём.
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
Аватара пользователя
Сионист
Сообщения: 1211
Зарегистрирован: 31 мар 2014, 06:18

Кстати, студийный знаком с типом small int.
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Слушай, ты с коммерческой разработкой сталкивался когда-нибудь или нет? :) Ты такие вопросы задаешь, будто ты просто увлекаешься программированием, а работаешь в какой-то другой области. Или это так и есть на самом деле? :)

Понимаешь, программисты не выбирают на чём писать. И не выбирают архитектуру. Все требования всегда приходят сверху. И там, откуда они приходят тоже сидят не люди с супермозгом. А частенько даже наоборот... И проект может разрабатываться не пару недель, а пару десятилетий. За такой большой промежуток времени может много чего поменяться в тех фреймворках или даже компиляторах, которые использовались для разработки. А бывает и так, что руководство принимает неверные решения и позже, понимая, что допущена ошибка, решает всё изменить. Или вообще приходит другое начальство, с более прогрессивным мышлением и заставляет всех сделать то, что давно нужно было сделать, но все боялись из-за того, что много придётся переписывать/перетестировать, хоть и дивиденды очевидны. Я с такими вещами сталкивался ни один и ни два раза в своей жизни, а постоянно.

Так что ситуация, когда начали разрабатывать под одним компилером, а потом через пару лет решили перейти на другой - вообще ни разу не удивительна.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Аватара пользователя
Сионист
Сообщения: 1211
Зарегистрирован: 31 мар 2014, 06:18

Я писал для завода. И сверху мне ничего не спускали. Или компилятор IBM платный?
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
Аватара пользователя
Сионист
Сообщения: 1211
Зарегистрирован: 31 мар 2014, 06:18

Я нашёл источник заблуждения: "Программирование для Windows 95" Чарлза Петзолдта, второй том, страница 1008

Код: Выделить всё

pfnRectangle=(PFNRECT)GetProcAdress(hLibrary, "Rectangle");[/cpp][/QUOTE]. Я не обратил внимание, [B]какая[/B] функция в примере стояла справа, соответственно не учёл, что там то было значение другой функции с фактическим типом [quote][code=cpp]BOOL (WINAPI *PFNRECT)(HDC, int, int, int, int)
, являющееся адресом функции Rectangle, а я всегда беру адрес по имени самой функции.
Писать можно на чём угодно, но зачем же так себя ограничивать? Пиши на c.
Ответить