VS 2019 Pro, latest Visual Micro IDE extension
#include <map>
#include <string>
std::map<int, std::string> myMap;
// the setup function runs once when you press reset or power the board
void setup() {
while (!Serial) {}
myMap.emplace(1, "Hello");
myMap.emplace(2, "STL");
Serial.println(myMap[1].c_str()); // Hello
Serial.println(myMap[2].c_str()); // STL
}
// the loop function runs over and over again until power down or reset
void loop() {
}
Compiling debug version of 'Sketch1' for 'Teensy 3.2 / 3.1'
Sketch1.cpp.o: In function std::_Rb_tree_iterator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator--()
Error linking for board Teensy 3.2 / 3.1
stl_tree.h:220: undefined reference to std _Rb_tree_decrement(std _Rb_tree_node_base*)
Debug build failed for project 'Sketch1'
Sketch1.cpp.o: In function std::_Rb_tree<int, std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::_Select1st<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >, std::less<int>, std::allocator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > >::_M_insert_node(std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >*)
stl_tree.h:2105: undefined reference to std _Rb_tree_insert_and_rebalance(bool, std _Rb_tree_node_base*, std _Rb_tree_node_base*, std _Rb_tree_node_base&)
Sketch1.cpp.o: In function void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*>(char const*, char const*, std::forward_iterator_tag)
basic_string.tcc:219: undefined reference to std __cxx11 basic_string<char, std char_traits<char>, std allocator<char> > _M_create(unsigned int&, unsigned int)
basic_string.tcc:212: undefined reference to std __throw_logic_error(char const*)
Sketch1.cpp.o: In function std::_Rb_tree_iterator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator--()
stl_tree.h:220: undefined reference to std _Rb_tree_decrement(std _Rb_tree_node_base*)
Sketch1.cpp.o: In function std::_Rb_tree_iterator<std::pair<int const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::operator++()
stl_tree.h:205: undefined reference to std _Rb_tree_increment(std _Rb_tree_node_base*)
collect2.exe*: error: ld returned 1 exit status