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

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

Войти
Регистрация
Восстановить пароль
 
Andriy_abc
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 3
#1

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

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

Друзья,

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

int& foo()=7;

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

Большое спасибо заранее.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2014, 23:23     Где может быть использована сигнатура int& foo()=7
Посмотрите здесь:

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

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

Где может быть ошибка? - C++
#include <iostream> #include <queue> #include <string> using namespace std; int main(){ string s; queue<string>...

где может быть ошибка на с++ - C++
при подсчете sn через 5 членов цикл повторяется вот текст программы #include <iostream> #include <iomanip> #include <math.h> ...

Подскажите где в программе может быть ошибка - C++
#include <iostream> #include <math> #include <conio> #include <time.h> #include <stdio.h> using namespace std; FILE *f1; ...

присваивание char - где тут может быть ошибка? - C++
Есть простая функция, обратную строку должна выдавать, а вместо этого передает "необработаное исключение" проблема в s = s; s =...

int const * const foo(const int* param) const - разъясните значение квалификаторов - C++
int const * const foo(const int* param) const -----1------2----------3----------------4 1: ? 2: делает содержимое массива или...

Ошибка: Cube::Cube(Cube &&)': cannot convert argument 1 from 'int' to 'int *[]' - C++
Не могу разобраться. Есть массив : int indices = { 1,2,3, 4,5,6 }; У класса конструктор: Cube(int indices);

В чем отличие int &f( ) от int f( ) - C++
Что такое int & и чем отличается от int ? #include <iostream> using std::cout; using std::endl; int some(int i) { return...

Foo::foo(): x(dx), y(dy) {}; Зачем - C++
Очень часто видел конструктор типа Foo::foo(): x(dx), y(dy) {}; Сам использовал только в инициализации структур. Какие отличия от...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Alex566
240 / 152 / 18
Регистрация: 03.04.2013
Сообщений: 317
31.03.2014, 23:30     Где может быть использована сигнатура int& foo()=7 #2
Может быть так?
C++
1
2
3
4
class A
{
    virtual int foo() = 0;
};
Абстрактный виртуальный метод класса.
Andriy_abc
0 / 0 / 0
Регистрация: 31.03.2014
Сообщений: 3
22.04.2014, 11:30  [ТС]     Где может быть использована сигнатура int& foo()=7 #3
спс за вариант, но тут дело не в чистом вирт методе, =7 это не ошибка
aLarman
642 / 563 / 89
Регистрация: 13.12.2012
Сообщений: 2,109
22.04.2014, 13:10     Где может быть использована сигнатура int& foo()=7 #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;
}
а вариантов использования такой возможности можно придумать просто кучу
DrOffset
7058 / 4199 / 949
Регистрация: 30.01.2014
Сообщений: 6,965
22.04.2014, 13:56     Где может быть использована сигнатура int& foo()=7 #5
Andriy_abc, если речь идет о такой конструкции,
C++
1
2
3
4
struct A
{
    virtual void foo() = 7;
};
то так делать нельзя. Я точно не помню насчет поведения студии, но даже если студия такое пропускает, то это все равно ошибка.
Если имелось в виду что-то другое, то см. ответ aLarman.
Yandex
Объявления
22.04.2014, 13:56     Где может быть использована сигнатура int& foo()=7
Ответ Создать тему
Опции темы

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