Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Programmer_С++
2 / 2 / 0
Регистрация: 13.10.2010
Сообщений: 149
#1

Указатели на функции - C++

13.10.2010, 21:39. Просмотров 473. Ответов 1
Метки нет (Все метки)

Изучаю указатели на функции.
Написал учебную программку, которая выдает время года по номеру месяца.

Но возникает ошибка - не могу понять какая.

Текст программы:


C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include <iostream>
using namespace std;
 
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <stdbool.h>
 
//Задаем прототипы функций
bool isWhinter (int);
bool isSpring (int);
bool isSummer (int);
bool isAutumn (int);
 
 
 
int main ()
{
 
//Номер месяца
int month=3;
 
//Задаем указатель на функцию
bool(*ptr)(int);
 
//Задаем массив с типом данных - указатель ptr
ptr seasons[4];
 
//Инициализируем элементы массива
seasons[0]=isWhinter;
seasons[1]=isSpring;
seasons[2]=isSummer;
seasons[3]=isAutumn;
 
 
//Запускаем функции проверок через элементы массива - указатели на функции
 
if(seasons[0](month))
cout<<"Winter";
 
 
if(seasons[1](month))
cout<<"Spring";
 
 
if(seasons[2](month))
cout<<"Summer";
 
 
if(seasons[3](month))
cout<<"Autumn";
 
getch ();
}
 
 
 
bool isWhinter (int x)
{return(x>11||x<3);}
 
bool isSpring (int x)
{return(x>2&&x<6);}
 
bool isSummer (int x)
{return(x>5&&x<9);}
 
bool isAutumn (int x)
{return(x>8&&x<12);}
Компилятор Dev-C++
Сравнивал с книжным примером - вроде все правильно...
После компиляции возникает ошибка:
0
Миниатюры
Указатели на функции  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.10.2010, 21:39
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Указатели на функции (C++):

Указатели на массивы. Указатели и функции - C++
Вот задача: Даны два массива : А и B. Необходимо создать третий массив, в котором нужно собрать: -Элементы обоих массивов; -Общие...

Указатели и массивы. Указатели и функции - C++
Никак не разберусь с указателями на функцию. Пишу в Visual Studio. Надо написать функцию Compress() с использованием указателей, которая...

Распечатать таблицы значений функций cox (x) и на отрезке [a; b] с шагом h, развив функции в ряд Тейлора и используя указатели на функции - C++
Распечатать таблицы значений функций cox (x) и на отрезке с шагом h, развив функции в ряд Тейлора и используя указатели на функции.

Указатели и указатели на указатели, а также типы данных - C++
Недавно начал изучать Си, перешел с Delphi. Много непонятного и пока процесс идет медленно. Накачал литературы, буду изучать) Щас...

Шаблонные функции и указатели на функции - C++
Помогите доделать и исправить... Задание: 1. Создать структуру Прямоугольник, с полями Высота и Ширина. Создать массив объектов типа...

Указатели и функции... - C++
Ребят.. у меня такой вопрос.. мне нужно сделать простенький массивчик ( одномерный) из n вещественных чисел. ввод n и элементов массива...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
StUser
11 / 11 / 1
Регистрация: 09.10.2010
Сообщений: 23
13.10.2010, 22:00 #2
Правильно так:
C++
1
typedef bool(*ptr)(int);
Добавлено через 19 минут
Или сразу, без определения типа указателя на функцию:
C++
1
bool (*seasons[4])(int);
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.10.2010, 22:00
Привет! Вот еще темы с ответами:

Указатели на функции - C++
Народ! Прошу у вас помощи ещё раз! Дано такое задание: С заданной точность E (Е&gt;0) вычислить площадь заштрихованной фигуры Метод...

Указатели на функции - C++
Расшифруйте пожалуйста эту запись, что она значит, с переменным кол. аргументом понял, а эту нет: long int (*func4(int))(void) Если не...

указатели и функции в с++ - C++
Как сделать так, чтобы функция возвращала указатель на какой-либо элемент этой функции, а сам исходный элемент в mainе оставался...

Указатели и функции - C++
Рботаю с SDL2, пытаюсь распределить код по функциям, чтобы не месить кашу в main. Задумывалось иинциализировать указатели в отдельной...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru