SORU
22 Aralık 2012, CUMARTESİ


Neyi 'void()' 'otomatik f(parametreler) -> decltype (...void())' mı?

Böyle bir şey baktı here kod buldum:

auto f(T& t, size_t n) -> decltype(t.reserve(n), void()) { .. }

Tüm belgeleri decltype olarak imzalanmış söylendi okudum:

decltype( entity )

ya

decltype( expression )

Ve ikinci argüman hiçbir yerde yok. En azından cppreference işaret etti. Bu 5 ** ikinci bir argüman mı? Ve eğer öyleyse, ne işe yarar?

CEVAP
22 Aralık 2012, CUMARTESİ


Sadece virgül virgül operatörü olduğunu ifade ediyor (tür anlam oluşturduğu yan türü: void), başka bir tartışma değil bu yana.

Bu kod eğer t.reserve(n) varsa, etkin ama void dönüş türü korumak istiyor SFİNAE kullanıyor.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Besnik Ibrahimi

    Besnik Ibrah

    27 Mart 2010
  • EmperorTigerstar

    EmperorTiger

    14 EYLÜL 2009
  • TheRightTire

    TheRightTire

    14 EKİM 2009