C++ :Следует ли использовать & #39;typedef& #39; или & #39;используя пространство имен& #39;? [закрыто]

Я пишу библиотеку с несколькими зависимыми модулями. Когда я включаю файл из другого модуля, должен ли я разрешать пространство имен с помощью:

using namespace project1::namespace1;
class1 obj;

или

typedef project1::namespace1::class1 class1;
class1 obj;

Каковы плюсы и минусы каждого подхода? Я где-то читал, что мы должны использовать typedefв файлах.H и usingв файлах.C, целесообразно ли это?

Одна проблема, с которой я столкнулся при использовании 'typedef', заключается в том, что это приводит к неоднозначности пространства имен, если я включаю в третий модуль как исходный класс, так и класс с 'typedef'.

39
задан vid 27 April 2012 в 07:22
поделиться