Есть ли разница?
Псевдоним типа для имени в пространстве имен может появиться в классе
struct S { using mytype = mynamespace::mytype; };
, в то время какобъявление об использовании может и не быть.
Каковы плюсы и минусы каждого синтаксиса?
Предыдущий пункт довольно большой, если вы имеете дело с областью видимости класса. ,
Кроме того, два подхода во многом похожи. Псевдоним - это новое имя, которое точно соответствует псевдониму. В то время как объявление using переносит существующее имя типа в область видимости. Если вы используете mytype
для обоих, вы не заметите разницы.
Какой из них является наиболее используемым / рекомендуемым?
Я сомневаюсь, что есть консенсус по этому вопросу,Используйте тот, который вам нужен, когда нужно (область действия класса), но в противном случае придерживайтесь руководства по стилю вашей команды.