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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Немного теории по С++, в Страуструпе не нашел 
V
    Опции темы
Fedor
Дата 19.6.2005, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Днепрянин
****


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

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



Завтра екзамен. Присутствуют такие вопросы:

1) Функция. Формальные параметры - функции
2) Функция. Формальные параметры - указатели на простые типы
3) Функция. Формальные параметры - указатели на массивы
4) Функция. Формальные параметры - указатели на структуры
5) Функция. Формальные параметры - указатели на функции

Чтоб по этим вопросам можно ответить?

В первую очередь интересуют 1 и 5. В Страуструпе я такого не нашел. Может, я слепой?



--------------------
Мы - Днепряне. Мы всех сильней.
PM ICQ   Вверх
np9mi7
Дата 19.6.2005, 18:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Цитата
1) Функция. Формальные параметры - функции
2) Функция. Формальные параметры - указатели на простые типы
3) Функция. Формальные параметры - указатели на массивы
4) Функция. Формальные параметры - указатели на структуры
5) Функция. Формальные параметры - указатели на функции

Да там это есть...Собственно в разделе функции...185 стр. smile


--------------------
"Я точно знаю то, что ничего не знаю..." Сократ.
evolution project
PM MAIL WWW ICQ MSN   Вверх
Fedor
Дата 19.6.2005, 18:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Днепрянин
****


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

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



Значит я слепой. До сих пор не вижу. Есть аргументы - массивы. А вот параметры - функции не вижу. Более точно не могли бы страницу сказать плиз?


--------------------
Мы - Днепряне. Мы всех сильней.
PM ICQ   Вверх
np9mi7
  Дата 19.6.2005, 18:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



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

И вообще как могут быть параметры функции - функции smile
Может параметры функции - функциональные объекты smile

Это сообщение отредактировал(а) np9mi7 - 19.6.2005, 18:27


--------------------
"Я точно знаю то, что ничего не знаю..." Сократ.
evolution project
PM MAIL WWW ICQ MSN   Вверх
Fedor
Дата 19.6.2005, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Днепрянин
****


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

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



Цитата(np9mi7 @ 19.6.2005, 18:26)
видимо тут имеется ввиду параметры - указатели на функции

на это есть отдельный вопрос smile


Цитата(np9mi7 @ 19.6.2005, 18:26)
И вообще как могут быть параметры функции - функции

Я вот тут эксперементировал, и получилось вот что:
Код
#include <iostream.h>
int min(int a,int b)
{
   return (a<b)?a:b;
}
int max(int a,int b)
{
   return (a>b)?a:b;
}

int res(int a,int b,int f(int c,int d))
{
  return f(a,b);
}

void main()
{
  cout<<res(5,4,min);
}

Тут f, насколько я понимаю, выступает параметром-функцией.

np9mi7 а как делать параметр - указатель на функцию?


--------------------
Мы - Днепряне. Мы всех сильней.
PM ICQ   Вверх
comcon1
Дата 19.6.2005, 20:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 11.6.2005
Где: Москва ДАС-МГУ

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



Я обычно так и передаю функции, через указатели:
Код


#include <iostream.h>    
int min(int a,int b) {
   return (a<b)?a:b;    
}    
int max(int a,int b) {    
   return (a>b)?a:b;    
}    
int res(int a,int b,int *f(int,int)) {    
  return f(a,b);    
}    
void main()     {
  cout<<res(5, 4, &min);    
}

А вообще, я сам тока что эти вопросы искал. Здесь восемь тем об указателях на функции. Зачем снова то же самое???

Указатель оформляется:

Код

void *fpointer (int,int);
void ClassName::*fclasspointer (int, int);


Инициализируется:
Код

fpointer = &function;
fclasspointer = &ClassName::classfunction;


И вызывается:

Код

(*fpointer)(a, b);
(Class.*fclasspointer)(a,b);



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


Днепрянин
****


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

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



comcon1 Благодарю


--------------------
Мы - Днепряне. Мы всех сильней.
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

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

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


 




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


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

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