|
Непонятный typedef |
|
|
|
Oct 15 2009, 11:30
|
Местный
  
Группа: Участник
Сообщений: 338
Регистрация: 1-02-06
Из: Королев, М.О.
Пользователь №: 13 846

|
Столкнулся вот с таким переопределением типа: Код typedef void (* sys_timeout_handler)(void *arg); (Это из стека lwIP) И никак не могу понять, что же из себя представляет переменная h, объявленная как Код sys_timeout_handler h; Буду признателен за подсказку.
--------------------
-Да как так-то?/-Да как-то так/-Ну так-то да
|
|
|
|
|
 |
Ответов
|
Oct 16 2009, 03:52
|

Adept
     
Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343

|
Цитата(GetSmart @ Oct 15 2009, 20:42)  Процедуры и функции и прочее - это алгоритмические еденицы. Они есть везде, где есть алгоритмы. Да? А вот в языке Verilog, например, есть function и task, процедуров не завезли.  Как быть? Нет в языке С процедур. Есть только функции. Это вопрос о терминах. Если хотите, чтобы вас однозначно понимали в какой-то предметной области, будьте добры корректно употреблять легальные устоявшиеся термины. В языке программирования С нет процедур. И в языке программирования С++ нет процедур. В нем же функции-члены классов - это функции члены классов, а не методы, как их многие называют. Методы в С++ - это виртуальные функции. В другом языке, возможно, корректно называть любые функции-члены методами. Но не в С++. Когда я вижу в контексте С++ слово метод, у меня сразу включается восприятие полиморфного поведения данной функции. И очень неприятно потом узнавать, что это была обычная функция-член. Некорректное употребление терминологии - источник для путаницы. И замечание было сделано совершенно уместно. Цитата(GetSmart @ Oct 15 2009, 20:42)  Видимо проблема растёт из "нового" образования в школах/вузах. Раньше, когда в обязательном порядке изучали Паскаль ни у кого бы не возникло отторжение понятия процедуры. Проблема растет из недостаточного знания матчасти и/или небрежного отношения мелочам. И это зря. "Профессионал отличается от любителя отработкой мелочей" (с).
--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
|
|
|
|
|
Oct 16 2009, 10:15
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Цитата(dxp @ Oct 16 2009, 09:52)  Да? А вот в языке Verilog, например, есть function и task, процедуров не завезли.  Как быть? Сэкономили  Цитата(dxp @ Oct 16 2009, 09:52)  Нет в языке С процедур. Есть только функции. Это вопрос о терминах. Если хотите, чтобы вас однозначно понимали в какой-то предметной области, будьте добры корректно употреблять легальные устоявшиеся термины. В языке программирования С нет процедур. И в языке программирования С++ нет процедур. ... Проблема растет из недостаточного знания матчасти и/или небрежного отношения мелочам. И это зря. "Профессионал отличается от любителя отработкой мелочей" (с). Поддерживаю тезис ARV, что профессионал видит в первую очередь суть. Вы когда вызываете "процедуру" написанную к примеру на асме или ещё на чём в "ступор" не входите? А то ведь как можно вызвать из Си то, чего нет?  Не стану критиковать создателей Си за кастрацию, но лично я, уж точно не чайник в программировании, намеренно дифференцирую процедуры и функции. И меня немного коробит (хотя иногда пользуюсь) когда применяют функцию (именно функцию), а результат никуда не используют. Во всяком случае эта ситуация обращает на себя внимание на подсознательном уровне. И я даже рад, что меня в вузе учили именно разделять алгоритмические еденицы на процедуры и функции. В этом есть смысл. Во всяком случае я знаю достаточно хорошо и Си и Паскаль и не впадаю в ступор, когда одна и та же алг. еденица называется в стандартах разных языков по-разному.
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
Сообщений в этой теме
Harvester Непонятный typedef Oct 15 2009, 11:30 GetSmart Цитата(Harvester @ Oct 15 2009, 17:30) И ... Oct 15 2009, 11:33 Harvester Цитата(GetSmart @ Oct 15 2009, 14:33) Под... Oct 15 2009, 11:47 andrew_b Цитата(GetSmart @ Oct 15 2009, 15:33) h -... Oct 15 2009, 11:50  GetSmart Цитата(andrew_b @ Oct 15 2009, 17:50) На ... Oct 15 2009, 11:52   andrew_b Цитата(GetSmart @ Oct 15 2009, 15:52) про... Oct 15 2009, 12:04    kurtis Цитата(andrew_b @ Oct 15 2009, 15:04) В... Oct 15 2009, 12:08    GetSmart Цитата(andrew_b @ Oct 15 2009, 18:04) В... Oct 15 2009, 12:10     andrew_b Цитата(GetSmart @ Oct 15 2009, 16:10) Не ... Oct 15 2009, 12:36      GetSmart Цитата(andrew_b @ Oct 15 2009, 18:36) К ч... Oct 15 2009, 13:07       andrew_b Цитата(GetSmart @ Oct 15 2009, 17:07) Дор... Oct 15 2009, 13:23        demiurg_spb Цитата(andrew_b @ Oct 15 2009, 17:23) Реч... Oct 15 2009, 16:03 kurtis Цитата(Harvester @ Oct 15 2009, 14:30) Ст... Oct 15 2009, 11:52 Flexz Давным-давно в паскале процедурой называлась функц... Oct 15 2009, 12:12 zltigo Цитата(Flexz @ Oct 15 2009, 15:12) Давным... Oct 15 2009, 12:31 sigmaN Да все знают. И ответ топикстартеру был понятен.
П... Oct 15 2009, 12:55 _Pasha Цитата(sigmaN @ Oct 15 2009, 15:55) Да вс... Oct 15 2009, 15:12  GetSmart Цитата(_Pasha @ Oct 15 2009, 21:12) Кодvo... Oct 16 2009, 21:20  AHTOXA Цитата(dxp @ Oct 16 2009, 09:52) В нем же... Oct 16 2009, 07:57   dxp Цитата(AHTOXA @ Oct 16 2009, 14:57) Первы... Oct 16 2009, 08:43    AHTOXA Ясно, спасибо. Замечу всё же, что "иногда наз... Oct 16 2009, 09:12     dxp Цитата(AHTOXA @ Oct 16 2009, 16:12) Ясно,... Oct 16 2009, 10:09      AHTOXA Цитата(dxp @ Oct 16 2009, 16:09) Ключевое... Oct 16 2009, 10:20       dxp Цитата(AHTOXA @ Oct 16 2009, 17:20) Откуд... Oct 16 2009, 13:41        AHTOXA Цитата(dxp @ Oct 16 2009, 19:41) Т.е. ООП... Oct 16 2009, 15:44         AHTOXA Цитата(AHTOXA @ Oct 16 2009, 21:44) Всё р... Oct 16 2009, 21:20         dxp Цитата(AHTOXA @ Oct 16 2009, 22:44) Всё р... Oct 17 2009, 05:31          AHTOXA Цитата(dxp @ Oct 17 2009, 11:31) Если он ... Oct 17 2009, 08:49           dxp Цитата(AHTOXA @ Oct 17 2009, 15:49) Если ... Oct 17 2009, 12:46            AHTOXA Цитата(dxp @ Oct 17 2009, 18:46) P.S. Что... Oct 17 2009, 14:14   dxp Цитата(GetSmart @ Oct 16 2009, 17:15) Под... Oct 16 2009, 13:08    GetSmart Цитата(dxp @ Oct 16 2009, 19:08) А где на... Oct 16 2009, 13:29    GetSmart Цитата(dxp @ Oct 16 2009, 19:08) Речь не ... Oct 16 2009, 14:29     _Pasha Цитата(GetSmart @ Oct 16 2009, 17:29) Это... Oct 16 2009, 19:18 GetSmart Дайте _Pashе медаль. И ещё одну, за занудство Oct 15 2009, 15:22 ARV имхо, профессионалу наплевать, как обозвать структ... Oct 16 2009, 04:33 dxp Цитата(ARV @ Oct 16 2009, 11:33) имхо, пр... Oct 16 2009, 06:24  GetSmart Цитата(dxp @ Oct 16 2009, 12:24) Угу. Дав... Oct 16 2009, 10:24 GetSmart Спрашивается - зачем так настойчиво выяснять разли... Oct 18 2009, 03:17 dxp Цитата(GetSmart @ Oct 18 2009, 10:17) Спр... Oct 18 2009, 04:07  GetSmart Цитата(dxp @ Oct 18 2009, 10:07) Путаница... Oct 18 2009, 06:32
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|