Derleyici Hatası C2534
'identifier' : oluşturucu bir değer döndüremiyor
Oluşturucu, ifade içeren bir return
deyim içeremez (ifade türüne void
sahip olsa bile). Bu, türünde void
bir dönüş ifadesine izin verilen normal void-return işlevinden farklıdır. Ancak, oluşturucuda return
erken dönüşler için ifade olmadan deyiminin kullanılmasına izin verilir.
Aşağıdaki örnek C2534 oluşturur:
// C2534.cpp
// compile with: /c
void void_func() {}
class A {
public:
int i;
A() {
return i; // C2534
return 123; // C2534
return (void)0; // C2534
return void_func(); // C2534
return; // OK
}
};
Önceki hatalar, deyimin tamamı return
kaldırılarak veya erken dönüş isteniyorsa dönüş ifadesi çıkarılarak düzeltilebilir.