Я использую Eclipse 4.12.0 и Eclipse CDT 9.8.1, и я пишу код C ++, который использует std::tuple
. Иногда средство форматирования кода вводит дополнительные пробелы в мой код, где я получаю записи кортежей.
Пожалуйста, рассмотрите следующий файл примера:
#include <tuple>
int main(int, char**)
{
std::tuple<int, int> myTuple; // First important line
std::get<0>(myTuple) = 2; // Second important line
return 0;
}
Я вставил сюда код, отформатированный в Eclipse. Все хорошо в этом примере. Но когда я копирую и вставляю две строки, помеченные как важные в комментариях, в другой файл .cpp
моего проекта и форматирую их, получается следующее:
std::tuple<int, int> myTuple; // First important line
std::get < 0 > (myTuple) = 2; // Second important line
Форматировщик вводил пробелы до и послеугловые скобки шаблона, как если бы я делал сравнение «больше чем» или «меньше чем». Этот эффект, похоже, как-то зависит от проекта. Если это происходит в исходном файле одного проекта в моем обозревателе проектов, похоже, это происходит в каждом исходном файле этого проекта . Но как только я вставляю строки в исходный файл другого проекта, средство форматирования кода ведет себя корректно (как в приведенном выше примере файла).
Я не сообщил об этом какошибка, так как я не знаю, как сделать его воспроизводимым. У кого-нибудь есть идея, в чем причина? Я не включил специфичные для проекта параметры форматирования кода, поэтому это не должно быть простой ошибкой конфигурации. Также добавление или удаление строки #include <tuple>
не имеет значения. Что еще я мог попробовать?