У меня есть следующий код. Не компилируется, не могу понять почему. Компилятор выдает следующую ошибку:
error: expected nested-name-specifier before ‘TaskCPtr’
Я не вижу ссылку на заголовок цикла, поэтому это сбивает с толку. Что не так?
Код:
// src/GData/foo.h
namespace GData
{
struct TaskData
{};
using TaskCPtr = std::shared_ptr;
}
// src/GObject/foo_bar.h
namespace Task
{
template
struct TaskStatus
{};
}
// src/GObject/bar.h
#include "GData/foo.h"
#include "foo_bar.h"
namespace GObject
{
using SPTaskStatus = Task::TaskStatus;
}
// src/main.cpp
#include "GObject/bar.h"
int main(int argc, char** argv) {
std::cout
Подробнее здесь: https://stackoverflow.com/questions/797 ... tion-fails