Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 3
1

Где может быть использована сигнатура int& foo()=7

31.03.2014, 23:23. Просмотров 498. Ответов 4
Метки нет (Все метки)

Друзья,

это чисто теоретический вопрос. Подскажите где может быть использована такая функция. Какой в этом практический смысл?

int& foo()=7;

Детали: тип не принципиален, целый взят просто в качестве примера.

Большое спасибо заранее.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.03.2014, 23:23
Ответы с готовыми решениями:

Int& foo() и int foo()
При передаче переменной по ссылке все понятно. Но я не пойму логики возвращения по ссылке....

База 1С 7.7 защищена и не может быть использована на других компьютерах
База 1С 7.7 защищена и не может быть использована на других компьютерах Дело такое, есть база...

Оператор && не может применяться к операндам типа string и int
Оператор && не может применяться к операндам типа string и string string a, b, c, d; ...

Error С2664. Параметр 1 не может быть преобразован из 'int' в 'int [][10]'
Добрый день! Компилятор "ругается" на описание функции. Как устранить данную проблему самому не...

4
243 / 154 / 48
Регистрация: 03.04.2013
Сообщений: 317
31.03.2014, 23:30 2
Может быть так?
C++
1
2
3
4
class A
{
    virtual int foo() = 0;
};
Абстрактный виртуальный метод класса.
0
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 3
22.04.2014, 11:30  [ТС] 3
спс за вариант, но тут дело не в чистом вирт методе, =7 это не ошибка
0
653 / 574 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
22.04.2014, 13:10 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int & foo()
{
static int x = 0;
return x;
}
int main()
{
foo() = 4;
cout<<foo()<<endl;
foo()=9;
cout<<foo()<<endl;
return 0;
}
а вариантов использования такой возможности можно придумать просто кучу
1
13712 / 7335 / 1751
Регистрация: 30.01.2014
Сообщений: 12,302
22.04.2014, 13:56 5
Andriy_abc, если речь идет о такой конструкции,
C++
1
2
3
4
struct A
{
    virtual void foo() = 7;
};
то так делать нельзя. Я точно не помню насчет поведения студии, но даже если студия такое пропускает, то это все равно ошибка.
Если имелось в виду что-то другое, то см. ответ aLarman.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2014, 13:56

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Напишите функцию f(int& m1, int& m0, int N), которая воз- вращает первую и последнюю цифры двузначного натурального числа N
Напишите функцию f(int&amp; m1, int&amp; m0, int N), которая воз- вращает первую и последнюю цифры...

Как создавать файлы вида filename_(1).foo . filename_(N).foo если filename.foo уже существует ?
Приветствую ! Вот и вопрос: если filename.foo существует, как создать новый filename_(1).foo,...

Подскажите, где может быть ошибка (структуры)? (скорее всего где-то амперсенд нужен, все вроде проверил)
написать универсальный тип, который представляет точку на плоскости в координатах (х, у) и в...

Где может быть ошибка?
#include &lt;iostream&gt; #include &lt;queue&gt; #include &lt;string&gt; using namespace std; int main(){ ...


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

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

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