class перед возвращаемым типом

244
06 сентября 2017, 14:49

Зачем пишут class перед возвращаемым типом?

class first
{
};
class two
{
public:
    class first test();
};
Answer 1

Если у Вас в одной области определен и класс, и одноимённая функция, то указание class необходимо для однозначного обращения к типу, а не к функции. Пример:

class A {};
void A() {}
int main()
{
    class A a; // здесь нужно class
}

В Вашем случае, наличие class не является обязательным.

Answer 2

Дополню ответ alexolut.

class A; // <- без этой строки не скопилируется. Это forward declaration
A* getA();
/// some code
class A {
};

A* getA() {
    return new A;
}

Однако для упрощения можно сделать forward declaration прямо в месте использования:

class A* getA();

Это часто бывает удобно при использовании внутри шаблонных параметров:

std::tuple<class A*, int, float> b;
READ ALSO
Как сделать прокрутку списка ul&gt;li

Как сделать прокрутку списка ul>li

Как сделать прокрутку списка при нажатии на кнопки и при скролингеможет есть готовые решение или слайдеры?!

217
Как в JQuery реализовать scroll по нажатию

Как в JQuery реализовать scroll по нажатию

Как реализовать скролл к верху/низу списка по нажатию кнопок up/down соответственно?

265
jQuery Как изменить элемент после его динамического добавления?

jQuery Как изменить элемент после его динамического добавления?

ЗдравствуйтеЕсть таблица, наполняемая динамически с помощью ajax

293