Когда я определяю метод, который принимает std::string
в файле заголовка и использует функциональность «Add Definition to xxx.cpp
» в Qt Creator, он создает определение в .cpp, в котором все параметры std::string используют тип std::___LIBCPP_ABI_VERSION::string
.
Обычно я просто удаляю "___LIBCPP_ABI_VERSION::
", но что это значит? Почему это происходит и как заставить qt Creator просто использовать std::string по назначению?
Это в ОСХ. Я должен добавить, что в моем файле .pro у меня есть:
LIBS += -stdlib=libc++
LIBS += -lstdc++
для использования С++11. Я предполагаю, что это как-то связано с использованием стандартной библиотеки, но я точно не знаю, в чем проблема.
libc++
иlibstdc++
. Это разные библиотеки. Узнайте больше о текущей стандартной библиотеке C++ clang: libcxx.llvm.org/#why - person Simon Warta   schedule 11.02.2015