Странный пример кода cpp (может быть?) о typedef из книги «Дизайн и эволюция C++».C++

Программы на C++. Форум разработчиков
Anonymous
Странный пример кода cpp (может быть?) о typedef из книги «Дизайн и эволюция C++».

Сообщение Anonymous »

Я не могу понять статический Q(P) в примере кода ниже:

Код: Выделить всё

typedef int P();
typedef int Q();
class X {
static P(Q); // define Q to be a P.
// equivalent to `static int Q()`
// the parentheses around Q are redundant

// Q is no longer a type in this scope

static Q(P); // define Q to be a function
// taking an argument of type P
// and returning an int.
// equivalent to `static int Q(int())`
}
ИМО, «Q больше не является типом в этой области» означает, что Q теперь является именем функции, так почему его можно использовать как статический Q(P)?
Этот пример кода кажется недействительным (касается грамматики).


Подробнее здесь: https://stackoverflow.com/questions/793 ... -design-an

Вернуться в «C++»