Aracılığıyla paylaş


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 voidsahip 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.