varsayılan bir kullanıcı tanımlı yapıcıVarsayılan (kullanıcı tanımlı) kurucu ve varsayılan bağımsız değişkenlerle kurucu arasındaki fark nedir?
class Simple
{
public:
Simple() {}
};
ve WithDefaults
da yapabilirsiniz daha bu
class WithDefaults
{
public:
WithDefaults(int i = 1) {}
};
diğer her biri için varsayılan birden fazla argüman alır ama olan bir kullanıcı tanımlı yapıcısı arasında herhangi bir fark var mı i
için açık bir değer ile inşa edilecek?
Özellikle, bu iki kurucu, her ikisi için de aynı varsayılan yapıcı rolünü oynarsa veya sınıfların özellikleri arasında ince farklar varsa, dil söz konusu olduğunda merak ediyorum.
Diğer bir deyişle, tüm argümanları için varsayılan değerleri her şekilde varsayılan bir kurucuya sahip bir kurucu mu?
Bunun bir kopyasını beklediğimi düşünüyordum, ama bunu hiçbir yerde yanıtlayamıyorum. – MicroVirus
Bu * hemen hemen * yanıtlandı [C++ yapıcılar ile varsayılan parametreler] (http://stackoverflow.com/questions/187640/default-parameters-with-c-constructors), sanırım, ama emin değilim. – MicroVirus
İzole olarak, sınıfların aynı olduğunu düşünüyorum. Dönüşümler dikkate alındığında farklı davranabilirler. @MicorVirus tarafından yapılan ikinci yorumdaki bağlantı bunu daha da açıklıyor. –