Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
'identifier' : işlev tanımı mevcut bir bildirimle eşleştirilemiyor
Açıklamalar
Parantezi olmayan bir işlev çağrısının önünde birli + işlecinin olağan dışı kullanımı kullanıldı.
Bu hata yalnızca C++ projelerinde oluşur.
Örnekler
Aşağıdaki örnek C2244 oluşturur:
// C2244.cpp
int func(char) {
return 0;
}
int func(int) {
return 0;
}
int main() {
+func; // C2244
}
C2244, bir sınıf şablonunun üye işlevi için yanlış işlev imzası kullanıldığında da oluşabilir.
// C2244b.cpp
// compile with: /c
template<class T>
class XYZ {
void func(T t);
};
template<class T>
void XYZ<T>::func(int i) {} // C2244 wrong function signature
// try the following line instead
// void XYZ<T>::func(T t) {}
C2244, üye işlev şablonu için yanlış işlev imzası kullanıldığında da oluşabilir.
// C2244c.cpp
// compile with: /c
class ABC {
template<class T>
void func(int i, T t);
};
template<class T>
void ABC::func(int i) {} // C2244 wrong signature
// try the following line instead
// void ABC::func(int i, T t) {}
Bir işlev şablonunu kısmen uzmanlaşamazsınız.
// C2244d.cpp
template<class T, class U>
class QRS {
void func(T t, U u);
};
template<class T>
void QRS<T,int>::func(T t, int u) {} // C2244