handler_allocator
- это шаблон класса , т. Е. Только при конкретном создании он приведет к фактическому классу. Следовательно, эти экземпляры являются множественными, так что вы получите один класс для каждого T
. Если вы хотите, чтобы эти разные классы были friend
друг от друга, тогда эта строка была бы подходящей.
Интересно, что означает шаблон ? Это шаблон <
имя T> ...?
Не совсем. Если вы добавите T
, то это приведет к неверному коду, поскольку T
будет shadow первым T
. Вместо этого вы можете добавить любой другой именованный идентификатор (скажем, S
), но в любом случае он работает без него, поскольку в этом фрагменте его нет смысла.