Değer ve başvuru; sabit değerler; var çıkarımı; const/readonly
Değer türlerinin başvuru türlerinden nasıl farklı olduğunu, sabit değerlerin ve sayısal soneklerin nasıl çalıştığını, var'ın ne zaman kullanılacağını ve const ile readonly'nin rollerini öğrenin.
Değer ve başvuru; sabit değerler; var çıkarımı; const/readonly, CoddyKit'te ücretsiz bir C# Academy dersidir. Bu, 3 dersinin 1. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C# Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C# Academy kursu toplamda 3 dersten oluşur.
Türler neden önemlidir
Amaç: Değer ve başvuru türlerini, ayrıca değişkenlerin, değişmezlerin ve sabitlerin günlük kodlarda nasıl davrandığını anlayın.
Değer ve başvuru türleri
Değer türü: atama sırasında veriyi kopyalar (örneğin int, bool, yapı). Başvuru türü: bir başvuruyu kopyalar (sınıf, dizi, dize).
- Değer: yerel değişiklikler daha güvenlidir
- Başvuru: paylaşılan nesne kimliği
Değişmezler ve sonekler
Değişmezlerin türleri vardır. Açıklık için sonekleri kullanın: f (kayan noktalı sayı), m (ondalık), L (uzun tamsayı).
- 3.14f → kayan noktalı sayı
- 10m → ondalık (para)
- 123L → uzun tamsayı
var inference
var, derleyicinin türü sağ taraftaki ifadeden çıkarmasını sağlar. Tür açıkça anlaşılıyorsa kullanın; aksi durumda türü açıkça belirtin.
const ve readonly karşılaştırması
const: derleme zamanı sabiti; readonly: oluşturucuda veya bildirim sırasında atanır.
- Sabit değerler için const kullanın (örneğin Pi)
- Çalışma zamanında bilinen değerler için readonly kullanın
Uygulamada türler
Değer ve başvuru davranışını, sayısal sonekleri, basit var tür çıkarımını ve const/readonly kullanımını tek bir küçük programda görün.
using System;
// Value type (struct) copies by value
public struct PointS
{
public int X;
public int Y;
}
// Reference type (class) copies the reference
public class PointC
{
public int X;
public int Y;
}
// Readonly demo class
public class Config
{
public readonly string Name;
public Config(string name)
{
Name = name; // can set here
}
}
public class Program
{
// Compile-time constant
private const double Pi = 3.14159;
public static void Main(string[] args)
{
// 1) Value vs reference
PointS a = new PointS { X = 1, Y = 2 };
PointS b = a; // copy value
b.X = 99;
Console.WriteLine("Value struct a.X = " + a.X); // 1 (unchanged)
Console.WriteLine("Value struct b.X = " + b.X); // 99
PointC ac = new PointC { X = 1, Y = 2 };
PointC bc = ac; // copy reference
bc.X = 77;
Console.WriteLine("Ref class ac.X = " + ac.X); // 77 (same object)
Console.WriteLine("Ref class bc.X = " + bc.X); // 77
// 2) Literals & suffixes
float f = 3.14f;
decimal price = 10m;
long big = 123L;
Console.WriteLine("f=" + f + " price=" + price + " big=" + big);
// 3) var inference (type is obvious)
var sum = a.X + a.Y; // int
Console.WriteLine("sum=" + sum);
// 4) const vs readonly
Config cfg = new Config("Demo");
Console.WriteLine("Pi=" + Pi + " Name=" + cfg.Name);
}
}
Değer türü tanımı
Özet
Özet: Değer türleri veriyi kopyalar; başvuru türleri nesneleri paylaşır. Sayısal değişmezler için sonekleri, açık olduğunda var'ı kullanın ve const ile readonly arasında uygun seçimi yapın.
Sıkça Sorulan Sorular
“Değer ve başvuru; sabit değerler; var çıkarımı; const/readonly” dersi ücretsiz mi?
Evet — “Değer ve başvuru; sabit değerler; var çıkarımı; const/readonly” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C# Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C# Academy kursu toplamda 3 dersten oluşur.
“Değer ve başvuru; sabit değerler; var çıkarımı; const/readonly” dersinde ne öğreneceğim?
Değer türlerinin başvuru türlerinden nasıl farklı olduğunu, sabit değerlerin ve sayısal soneklerin nasıl çalıştığını, var'ın ne zaman kullanılacağını ve const ile readonly'nin rollerini öğrenin. C# Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
C# Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te C# Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 3 dersinin 1. dersidir.
“Değer ve başvuru; sabit değerler; var çıkarımı; const/readonly” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu C# Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her C# Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Değer ve başvuru; sabit değerler; var çıkarımı; const/readonly
- Operatörler ve ifadeler: aritmetik, karşılaştırma, mantıksal
- Sonekleri uygulama; dönüştürme ve tür dönüştürme; C# 6 nesne oluşturma