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

В чем разница между типом функции и типом возвращаемого значения? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Футбольный турнир по олимпийской системе http://www.cyberforum.ru/cpp-beginners/thread1516749.html
Есть вот такая задачка Нужно сделать футбольный турнир по олимпийской системе (система плей офф) Вводишь количество команд, их название Затем они рандомно образуются в пары И играют между собой (счет нужно ввести пользователю) Победившая команда проходит дальше и так до финала Организовать это всё нужно в виде дерева (это обязательно) может кто то делал подобное?
C++ Ошибка при чтении из файла Помогите разобраться с чтением из файла. Листинг указан ниже. Программа выполняется полностью, и только перед выполнением последней строки (return 0) выдает ошибку "Необработанное исключение по адресу 0x77D2DF62 (msvcp120d.dll) в test3.exe: 0xC0000005: нарушение прав доступа при записи по адресу 0xFEEEFEEE." В отладчике красным подсвечена переменная argv (аргумент функции main - указатель на... http://www.cyberforum.ru/cpp-beginners/thread1516720.html
C++ Вычислить сумму ряда
Вычислить сумму ряда 5 s = ∑ (-1) * i * (x / i!) i=1 Значение x вводится с клавиатуры.
в Visual Studio пишет: отсутствует спецификатор типа-предполагается int.C++ не поддерживает int по умолчанию C++
#include "stdio.h" int factorial(short n); main() { float s, x; short i; int j; scanf("%f", &x); s = 0; for (i=1; i <= 5; i++) {
C++ Функция преобразования температуры из градусов Цельсия в градусы Фаренгейта (задание №5 из С.Прата, глава 2) http://www.cyberforum.ru/cpp-beginners/thread1516675.html
Напишите программу, в которой функция main() вызывает определяемую пользователем функцию, принимающую в качестве аргумента значение температуры по Цельсию и возвращающую эквивалентно значение температуры по Фаренгейту. Программа должна выдать запрос на ввод значения по Цельсию и отобразить следующий результат: Please enter a Celsisus value: 20 20 degrees Celsisus is 68 degrees Fahrenheit. ...
C++ SMFL 2.3.1. sf::Music. Visual Studio 2010 С частью функций по музыке проблем не возникло, все заработало как нужно. ( после бубна, естественно). А часть крутил в циклах в надеждах получить изменения: Высоту(Pitch) от 1 до 44к - без изменений. MinDistance от 1 до 100 - 0 изменений. Attetuation от 1 до 100. - без изменений. Вопрос 1: Имеет ли хоть какое-то влияние эти 3 параметра на колонки 2000 года производства? В общем... вот... подробнее

Показать сообщение отдельно
Jewbacabra
Эксперт PHP
2052 / 1716 / 629
Регистрация: 24.04.2014
Сообщений: 4,885
19.08.2015, 14:09     В чем разница между типом функции и типом возвращаемого значения?
Цитата Сообщение от useruser Посмотреть сообщение
Основные типы в С++ делятся на три категории: целочисленные, с плавающей запятой и void.
А как же массивы, указатели, классы, структуры, объединения, ссылки?
Цитата Сообщение от useruser Посмотреть сообщение
Где тип функции? Подозреваю, что его нет.
Он как суслик, ты его не видишь, но он есть.
Тут функция имеет тип Int64(AnsiString). как правильно записать это в delphi не знаю, но функциональные типы там то же есть
Функцию можно рассматривать как черный ящик, в который кладешь набор объектов, они как-то обрабатываются, и получается другой объект - возвращаемое значение.
Например
sin - принимает double, возвращает double.
Тип функции double(double). Тип Возвращаемого значения double.
cos - аналогично. Тип функции double(double), возвращаемое значение - double.
т.е. у функций sin и cos один и тот же и тип функций, и тип возвращаемого значения.
у функции с прототипом
C++
1
double foo(int);
тип double(int), а тип возвращаемого значения double.
тип возвращаемого значения такой же как у sin и cos, но тип функции уже другой.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <cmath>
using namespace std;
 
void calc(double func(double), double val) {
    cout << func(val) << endl;
}
 
double foo(int x) {
    return 0.1*x;
}
 
int main() {
    calc(cos, 0.0); // ok
    calc(sin, 0.0); // ok
    // calc(foo, 0.0); ошибка, тип 1 параметра не подходит
    return 0;
}
 
Текущее время: 20:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru