![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| Mayk |
|
||||||||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
http://forum.vingrad.ru/index.php?showtopic=33456 http://www.ozon.ru/?partner=vingrad msdn.com
Ах, да, точно. Если ф-ция объявлена как инлайн, то заместо ей вызова будет ее тело. Грубо говоря вот такого вот кота:
Компилятор переделает в нечто типа
А если ф-ция(или переменная) объявлена как статик, то тогда она может быть вызвана только из того же объектного модуля, где определена. Для других объектных модулей она будет не видна. Это сообщение отредактировал(а) Mayk - 22.8.2005, 18:59 -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||||
|
|||||||||
| Mayk |
|
||||||||||||||||||||||||||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
Загрузить из библиотеки ф-цию "myPuts". Ф-ция вернет нечто близкое к void*.
Закастить тип загруженной ф-ции - указатель на ф-цию принимающий 1 int и возвращающей int.
Присвоить указателю значение другого указателя.
Ключевою слово extern говорит о том, что данная вещь будет объявлена позже, возможно в другом объектном файле.
Попробую пошагово объяснить.
Мы просто говорим компилятору о том, что есть такая глобальная переменная.
имя переменной
аргументы ф-ции.
возвращаемое значение ф-ции
указатель на ф-цию принимающей инт и возвращающей инт. Это сообщение отредактировал(а) Mayk - 22.8.2005, 19:13 -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: нет Всего: 128 |
Вот-вот. Вы же сами сказали: "я люблю обращение на 'ты'"! А теперь злитесь. Так что я буду обращаться на "вы", так проблем меньше. Объяснения хорошие, спасибо! |
|||
|
||||
| Void |
|
|||
![]() λcat.lolcat ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2206 Регистрация: 16.11.2004 Где: Zürich Репутация: 40 Всего: 173 |
Маленькое уточнение: это только подсказка компилятору подставить тело функции. Он вправе и не делать этого. А вправе и сделать без прямого указания в виде inline. Но одно стабильно - inline функции, так же как static, имеют internal linkage, то есть не видны вне данной единицы трансляции. -------------------- “Coming back to where you started is not the same as never leaving.” — Terry Pratchett |
|||
|
||||
| Hroft |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 310 Регистрация: 20.10.2003 Где: Москва Репутация: нет Всего: 3 |
Этот топик в юмор бы надо...
Стыдно должно стать, sim7, на такие вопросы можно найти ответы в начале любой книги по С++. По-моему, Страуструп "The C++ PL" маст хев и бест чойс в одном. ЗЫ: sim7, а что, обращение "объясните" теперь уже считается обращением на ты? |
|||
|
||||
| mr.Anderson |
|
|||
![]() iOS Lead Developer ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3374 Регистрация: 20.12.2004 Где: далеко Репутация: нет Всего: 128 |
Пардон, этого я и не заметил. Вот видите, привычка. Ну привык я обращаться на вы. Не понимаю, что тут такого неприятного...
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |