4.9.0 sürüm here değiştirir GCC bakarken, aşağıdaki okumaya hoş bir sürpriz oldu; C++ için "Yeni Diller ve Dil belirli iyileştirmeler" bölümünde: §4.1.2 ve N3889: Concepts Lite Specification ait §5.1.1 tarafından belirtildiği gibiC++ 14 kısıtlanmamış genel işlevleri destekleyecek mi?
G ++ kısıtsız jenerik fonksiyonlarını destekler. Kısaca, otomatik genel lambdas benzer bir kapalı fonksiyon şablon parametresi beslenmesi için herhangi bir fonksiyon Bildiricisi bir parametre bildiriminde bir tip-belirleyici olarak kullanılabilir.
// the following two function declarations are equivalent
auto incr(auto x) { return x++; }
template <typename T>
auto incr(T x) { return x++; }
Ben GCC 4.9.0 inşa edilmiş ve beklendiği gibi benim ilk testler çalıştı. Kavramlar Lite'un yaklaşan C++ 14 şartnamesine bir şekilde yardımcı olacağını düşünüyorum. C++ 'nın parçası olmak için "kısıtsız genel işlevler" için herhangi bir plan var mı?
gelecekteki bir sürümüne dahil edilmeden önce Bu bize öğrenmek ve deneyime dayalı her özelliğin tasarımını ayarlamanızı sağlayan dek C++ 17 Neredeyse bunu C++ 14'te yapabilirsiniz: 'auto incr = [] (auto x) {return x ++;}; – chris
Cheers chris. Evet, bunun farkındayım. – user2023370
Ben standart son taslakta 'N3889' arasında' 4.1.2' ve '5.1.1' belirtilen eklemeler herhangi bulamıyorum' N3936' yüzden C++ 14 için hayır. –