У меня ошибка компиляции, которую я не понимаю. У меня есть комбинация файлов h/cpp, которая не содержит класс, но определяет некоторые служебные функции. когда я пытаюсь использовать структуру, которая определена в другом классе я получаю ошибку:C++ ошибка компиляции
ошибка C2027: использование неопределенного типа «B :: C»
так, усеченную к проблеме, Н- файл выглядит следующим образом
namespace A {
void foo(B::C::SStruct const & Var);
}
определение SStruct находится в классе, который находится в другой ч-файл, который, конечно, включен.
namespace B {
class C {
public:
struct SStruct { };
};
}
странная вещь, я могу использовать эту структуру в других классах хорошо, это только кажется, что связано с этим один час-файл, который содержит только вспомогательные функции. Что мне здесь не хватает? спасибо!
спасибо. извините, я забыл упомянуть об этом в своем оригинальном посте, он является публичным. – clamp
yep, похоже, что это заказ. благодаря! мне нужно будет пересмотреть организацию моих h-файлов. – clamp