const ref and Structured bindings
От: niXman Ниоткуда https://github.com/niXman
Дата: 18.07.18 20:09
Оценка:
привет!

пытаюсь освоить сабж.
все норм, за исключением того, что не могу получить константные ссылки.
пример:
#include <iostream>
#include <map>
#include <string>

template<typename T>
void foo() { std::cout << __PRETTY_FUNCTION__ << std::endl; }

int main() {
    std::map<std::string, std::string> map = {
         {"1", "2"}
        ,{"3", "4"}
    };
    
    for ( const auto& [k, v]: map ) {
        foo<decltype(k)>();
        foo<decltype(v)>();
    }
}

(https://wandbox.org/permlink/rVHPRKUdgAKWKPmo)
и в выводе я получаю это:
void foo() [with T = const std::__cxx11::basic_string<char>]
void foo() [with T = const std::__cxx11::basic_string<char>]
void foo() [with T = const std::__cxx11::basic_string<char>]
void foo() [with T = const std::__cxx11::basic_string<char>]

хотя ожидаю константные ссылки.

чяднт?

спасибо.
пачка бумаги А4 стОит 2000 р, в ней 500 листов. получается, лист обычной бумаги стОит дороже имперского рубля =)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.