Derleyici Hatası C3535
'type1' için 'type2' türünden tür çıkarılamıyor
anahtar sözcüğü tarafından bildirilen değişkenin auto
türü, başlatma ifadesinin türünden çıkarılamaz. Örneğin, başlatma ifadesi bir tür olmayan olarak değerlendirilirse void
bu hata oluşur.
Bu hatayı düzeltmek için
Başlatma ifadesinin türünün olmadığından
void
emin olun.Bildirimin temel bir türün işaretçisi olmadığından emin olun. Daha fazla bilgi için bkz . Temel Türler.
Bildirimin bir tür işaretçisi olması durumunda başlatma ifadesinin bir işaretçi türü olduğundan emin olun.
Örnekler
Başlatma ifadesi olarak değerlendirildiği için aşağıdaki örnek C3535 verir void
.
// C3535a.cpp
// Compile with /Zc:auto
void f(){}
int main()
{
auto x = f(); //C3535
return 0;
}
Aşağıdaki örnek C3535'i verir çünkü deyimi değişkeni x
bir işaretçi olarak algılar, ancak başlatıcı ifadesinin türü çifttir. Sonuç olarak, derleyici değişkenin türünü çıkaramaz.
// C3535b.cpp
// Compile with /Zc:auto
int main()
{
auto* x = 123.0; // C3535
return 0;
}
Aşağıdaki örnek C3535'i verir çünkü değişken p
bir işaretçiyi çıkarılmış bir türe bildirir, ancak başlatma ifadesi bir işaretçi türü değildir.
// C3535c.cpp
// Compile with /Zc:auto
class A { };
A x;
auto *p = x; // C3535
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin