Esempio:boost :: call_traits - Perché gcc sta dando false per questo?
#include <iostream>
#include <boost/call_traits.hpp>
#include <type_traits>
boost::call_traits<int>::param_type f()
{
return 1;
}
int main()
{
std::cout << std::boolalpha;
std::cout <<
std::is_const<boost::call_traits<int>::param_type>::value
<< std::endl; // true
std::cout << std::is_const<decltype(f())>::value << std::endl; // false
}
Domanda:
meno, sto facendo qualcosa di sbagliato, penso che dovrei ottenere true
per entrambi, ma gcc 4.7.0 uscite false
per il secondo. C'è qualcosa che mi manca?