Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
"identifier": konstruktor nie może zwrócić wartości
Uwagi
Konstruktor nie może zawierać instrukcji z wyrażeniem return (nawet jeśli wyrażenie ma typ void). Różni się to od regularnej funkcji zwracanej przez pustkę, w której dozwolone jest wyrażenie zwracane typu void . Jednak użycie instrukcji return bez wyrażenia jest dozwolone dla wczesnych zwrotów w konstruktorze.
Example
Poniższy przykład generuje kod 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
}
};
Powyższe błędy mogą zostać naprawione przez usunięcie całej return instrukcji lub pominięcie wyrażenia zwracanego, jeśli jest wymagany wczesny zwrot.