Возврат обратного итератора к обратному концу Возвращает обратный итератор, указывающий на теоретический элемент, предшествующий первому элементу в векторе (который считается его обратным концом).
Диапазон между vector :: rbegin и vector :: rend содержит все элементы вектора (в обратном порядке).
blockquote>теоретический элемент, предшествующий первому -> На него нельзя ссылаться. Это не указывает на элемент.
Я предполагаю, что вы хотите сделать:
v.back()->push_back({});
Это, учитывая, что
v
не является пустым. Сначала вы должны сделатьv.push_back({})
, если он пуст в качестве примера.
Что касается IDE, это должно быть проблемой конфигурации. Я в основном работаю над Eclipse, там эта проблема обычно решается:
Установка параметров компилятора в соответствии с настройками вашего cmake (например, проекты C ++ по умолчанию не поставляются с c ++ 11 включен, поэтому вы должны убедиться, что он имеет -std = c ++ 11 в настройках компилятора IDE).
Повторное сканирование для всех включает.
Обычно вы можете попытаться проверить, не распознано ли что-то (например, недоудача по ключевому слову vector). И когда вы нажмете Ctrl + клик по вектору, вы сможете увидеть, какой заголовок использует IDE и какой код он использует (могут быть некоторые ifdef, а некоторые могут быть не активированы, например, например, __cppversion> = 201103L или что-то подобное означает IDE считает, что у вас нет компилятора C ++ 11).
Нет, вы не можете получить доступ к статическим библиотекам напрямую из C #. У вас есть для использования DLL.
Способ «использовать» статическую библиотеку в C # состоит в том, чтобы сначала создать упаковку Managed C ++, которая обеспечит фасад для остального управляемого мира. Как все остальные уже прокомментировали, C # поддерживает только библиотеки DLL для P / Invoke.
Нет способа сделать это.
Только вызывать функции DLL во время выполнения или создавать COM-объект из вашей библиотеки
«Статическая библиотека» означает, что библиотека будет объединена с вашим окончательным приложением. Эта концепция не существует в .net. .net поддерживает только библиотеки DLL.