共用方式為


編譯器錯誤 C2534

'identifier' : 建構函式無法傳回值

備註

建構函式不能包含 return 具有表達式的語句(即使表達式具有 類型 void也一樣。 這與允許型別 void 之傳回表達式的正則 void 傳回函式不同。 不過,在建構函式中,允許使用 return 不含表達式的 語句進行早期傳回。

Example

下列範例會產生 C2534:

// 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
   }
};

如果想要早期傳回,可以藉由移除整個 return 語句或省略傳回表達式,來修正上述錯誤。