VSCode не может найти vector. Программирование Arduino

Структура проекта

Структура файлов приведена на скриншоте.
В файле ConnectorDB.cpp выполняется #include <vector>
При сборке получаю ошибку: sketch\src\ConnectorDB.cpp:5:10: fatal error: vector: No such file or directory
Понимаю, что программа не может найти файл "vector"

В ./vscode/c_cpp_properties.json прописано:

{
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "C:\\Program Files (x86)\\Arduino\\tools\\**",
                "C:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\**",
                "D:\\vahtaClient\\src",
                "D:\\vahtaClient\\headers",
                "D:\\vahtaClient\\lib\\**",
                "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Professional\\VC\\Tools\\MSVC\\14.24.28314\\include\\**"
            ],
            "forcedInclude": [
                "C:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino\\Arduino.h"
            ],
            "browse": {
                "path":[
                    "C:\\Program Files (x86)\\Arduino\\tools\\**",
                    "C:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\**",
                    "D:\\vahtaClient\\src",
                    "D:\\vahtaClient\\headers",
                    "D:\\vahtaClient\\lib\\**",
                    "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\Professional\\VC\\Tools\\MSVC\\14.24.28314\\include"
                ]   
            },
            "intelliSenseMode": "msvc-x64",
            "compilerPath": "C:/Program Files (x86)/Microsoft Visual Studio/2019/Professional/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe",
            "cStandard": "c11",
            "cppStandard": "c++17"
        }
    ],
    "version": 4
}

Фрагмент файла ConnectorDB.cpp

#ifndef CONNECTORDB_H
#define CONNECTORDB_H

#include "../headers/ConnectorDB.h"
#include <vector>

ConnectorDB::ConnectorDB() {}

Ответы (1 шт):

Автор решения: Alexey Nikolaev

По ссылке описаны ограничения C++ в Arduino:

2. C++ limitations

So, if the Arduino language is a subset of C++, then does that mean that you can use all the C++ functionalities?

Unfortunately, the answer is no – at least with the Arduino core.

Here are some of the main C++ features you can’t use with Arduino:

  • STL library. Forget about using std::vector for lists, std::string, or std::map (well, in fact you can use an external library to still get some functionalities from vectors, strings, etc). You’ll have to define your arrays yourself and manage their space. Anyway, the Arduino memory is far more smaller than your computer memory, so managing memory is a real matter here. You’ll want to make your arrays as small as possible. For strings though, you can use the built-in Arduino String type.
  • Exceptions. You’ll have to deal with error codes in returned values!

Если кратко - то недоступен STL (но если очень хочется, то можно установить библиотеку с реализацией, но она ест очень много памяти), а также механизм исключений.

Если все же очень хочется пользоваться функционалом STL, то по этой ссылке инструкция по установке библиотеки.

→ Ссылка