Le code suivant ne compile pas sous G ++ 4,8G ++ 4.8, typeof ne peut toujours pas être utilisé avec "::"
#include <vector>
using namespace std;
int main() {
vector<int> v;
typeof(v)::iterator it;
}
Si je remplace typeof à decltype, il fonctionne très bien. Je sais que sur une solution de contournement avec une structure de modèle
template<class T> struct Self {
typedef T Type;
};
puis
Self<typeof(v)>::Type::Iterator it;
mais son ennuyeux.
Est-ce un bug qui devrait être signalé? Ou c'est une fonctionnalité?
Maintenant que nous avons decltype, typeof est aussi bon que mort. Pourquoi l'utiliser du tout? –
Je n'aime pas ce mot. Typeof sonne mieux et est plus courte de 2 caractères – user31264
* "Je n'aime pas ce mot Typeof sonne mieux et est plus court de 2 caractères" * Aucune de ces raisons n'est une raison valable d'utiliser 'typeof'. – Ali