Selamün Aleyküm;
C++'da sınıflar da yapılar da değer türlüdürler:
// C++ - Varsayılan üye erişim yöntemleri dışında aslında ikisi de aynı.
class Example
{
};
struct Example
{
}
Lakin D, C#, Object Pascal dillerinde sınıflar referans türlü, yapılar ise değer türlü oluyor:
// D
class Example // Referans türlü
{
}
struct Example // Değer türlü
{
}
// C#'da da aynı:
..
// Object Pascal'da da aynı:
type
Example = class // Referans türlü
end;
type
Example = record // Değer türlü
end;
Bu dillerde sınıflar ve yapılar varsayılan olarak bu şekildeler ama C++ neden bu dillerden farklı bir şekilde davranarak sınıfları değer türlü oluşturuyor? Sizce hangisi daha mantıklı? Varsayılan olarak sınıfları değer türlü mü tanıtmalı yoksa referans türlü mü?
Teşekkürler.
--
[ Bu gönderi, http://ddili.org/forum'dan dönüştürülmüştür. ]