C ++ 11: la combinaison de 03auto et decltype

La combinaison de l'auto et du decltype

0. Spectacle pré-classe

  • decltypeRésolution du problème de type sum (), mais t1 et t2 n'ont pas été déclarés . Pour résoudre ce problème, un type de retour de fuite a été introduit .

1. L'introduction du suivi des types de retour

  • À l'origine, seul le type de declt était utilisé
template<typename T1, typename T2>
decltype(t1+t2) sum(T1 &t1, T2 &t2)
{
	return t1 + t2;
}
  • Maintenant: comment écrire auto et decltype
template <typename T1, typename T2>
auto sum(T1 &t1, T2 &t2)->decltype( t1 + t2)
{
	return t1 + t2;
}

2. Les deux éléments de base qui composent la fonction de type de retour de trace

  • autoEspace réservé
  • Symbole composé ->return_type, c.-à-d.->decltype(t1+t2)

3. Suivez l'application réelle de la fonction de type de retour

  • Je ne comprends pas

Lisez-moi

  • 20200421 Première édition: "Compréhension approfondie de C ++ 11" 4.4, "Application approfondie de C ++ 11" est trop simple.

Je suppose que tu aimes

Origine www.cnblogs.com/fewolflion/p/12752147.html
conseillé
Classement