Bilgisayarın aniden kapanmasını düzeltmenin basit yolu
Eğer ki kullanırken bilgisayarınız aniden kapanırsa. Bilgisayarınızda ne sorun olduğunu mu merak ediyorsunuz? Bu makale bu hatanın nasıl düzeltileceği konusunda size yol gösterecektir.
Golang'daki metotlar fonksiyonlara benzer ancak aralarında önemli bir fark vardır: alıcının özelliklerine erişim sağlayan bir alıcı argümanları vardır . Alıcı struct veya non-struct tipinde olabilir, ancak her ikisi de aynı pakette olmalıdır. int veya string gibi yerleşik tipler de dahil olmak üzere, diğer paketlerde tanımlanan tipler için metot oluşturmak mümkün değildir ; Aksi takdirde derleyici hata verecektir.
Örneğin:
package main
import "fmt"
// Định nghĩa một struct
type person struct {
name string
age int
}
// Định nghĩa một phương thức với struct receiver
func (p person) display() {
fmt.Println("Name:", p.name)
fmt.Println("Age:", p.age)
}
func main() {
// Tạo một phiên bản của struct
a := person{name: "a", age: 25}
// Gọi phương thức
a.display()
}
Sonuç:
Name: a
Age: 25
Sözdizimi
func(receiver_name Type) method_name(parameter_list) (return_type) {
// Code
}
Alıcı: Bu yöntem kullanılarak erişilebilir.
Yapı türünde Alıcıya sahip yöntem
Go'da alıcının struct tipinde olduğu bir metot tanımlayabilirsiniz. Alıcıya metodun içinden ulaşılabilir. Önceki örnek bu yaklaşımı struct tipinde bir Receiver ile göstermektedir.
Alıcıya sahip yöntem yapı türünde değil
Go ayrıca alıcı türü ve metot tanımı aynı pakette olduğu sürece metotların yapı dışı alıcılara sahip olmasına da izin verir. Başka bir paketteki alıcı türüyle (örneğin int, string) bir metot tanımlayamazsınız.
Örneğin:
package main
import "fmt"
// Tạo một kiểu tùy biến dựa trên int
type number int
// Định nghĩa một phương thức với receiver không phải struct
func (n number) square() number {
return n * n
}
func main() {
a := number(4)
b := a.square()
fmt.Println("Square of", a, "is", b)
}
Sonuç:
Square of 4 is 16
Alıcı işaretçili yöntem
Go'da metotlar işaretçi alıcılarına sahip olabilir. Bu, yöntemde yapılan değişikliklerin çağırana yansıtılmasını sağlar; bu, değer alıcılarında mümkün değildir.
Sözdizimi:
func (p *Type) method_name(...Type) Type { // Code}
Örneğin:
package main
import "fmt"
// Defining a struct
type person struct {
name string
}
// Phương thức với receiver pointer để chỉnh sửa dữ liệu
func (p *person) changeName(newName string) {
p.name = newName
}
func main() {
a := person{name: "a"}
fmt.Println("Before:", a.name)
// Gọi phương thức này để thay đổi tên
a.changeName("b")
fmt.Println("After:", a.name)
}
Sonuç:
Before: a
After: b
Yöntem hem işaretçiyi hem de değeri kabul eder
Fonksiyonların aksine, Go metotları hem değer hem de işaretçi alıcılarını kabul edebilir. İşaretçiler veya değerler geçirebilirsiniz ve metot buna göre işlem yapacaktır.
Örneğin:
package main
import "fmt"
type person struct {
name string
}
// Phương thức với receiver pointer
func (p *person) updateName(newName string) {
p.name = newName
}
// Phương thức với receiver value
func (p person) showName() {
fmt.Println("Name:", p.name)
}
func main() {
a := person{name: "a"}
// Gọi phương thức con trỏ cùng giá trị
a.updateName("b")
fmt.Println("After pointer method:", a.name)
// Gọi phương thức giá trị với con trỏ
(&a).showName()
}
Sonuç:
After pointer method: b
Name: b
Yöntem ve fonksiyon arasındaki fark
Yöntem | Çene |
Bir alıcı içerir | Alıcı içermiyor |
Aynı isimde fakat farklı tipte metotlar tanımlamak mümkündür. | Aynı isimli ancak farklı tipteki fonksiyonlara izin verilmez. |
En üstünlük derecesi olarak kullanılamaz | Üst nesneler olarak kullanılabilir |
Eğer ki kullanırken bilgisayarınız aniden kapanırsa. Bilgisayarınızda ne sorun olduğunu mu merak ediyorsunuz? Bu makale bu hatanın nasıl düzeltileceği konusunda size yol gösterecektir.
Zamanla, Safari okuma listenizi daha sık kullandıkça, liste büyüyebilir ve karmaşıklaşabilir. Safari'de okuma listenizi temizleme talimatlarını aşağıda bulabilirsiniz.
Telegram grup konuları Telegram grubundaki mesajlardan ayrı olacak ve birden fazla tartışma konusu oluşturabileceksiniz. Aşağıdaki makale Telegram grup konusu oluşturmanıza yardımcı olacaktır.
Tesla bobini, dahi Nikola Tesla'nın meşhur icadı olan rezonanslı bir transformatör devresi oluşturur. Yüksek voltajlı, düşük yoğunluklu, yüksek frekanslı alternatif akım üretmek için kullanılır... Sadece deşarj değil, zeka ve yaratıcılıkla insan Tesla bobinlerini de şarkı söylettirir.
Aralık ayının başlarında, inşaat şirketi S. Rushton, Kanada'nın Nova Scotia eyaletine bağlı Halifax kentinde 220 ton ağırlığındaki eski bir binayı, yaklaşık 700 kalıp sabun "yardımıyla" 9 metre mesafeye başarıyla taşıdı.
Çinli hipersonik silah araştırmacıları, uçakların 30 km yükseklikte 19,756 km/s (Mach 16) hızla seyahat etmesini sağlayan dünyanın en güçlü döner patlayıcı motorunu geliştirdi.
Aşağıda kendinize İngilizce mutlu yıllar dilemek için bazı durumlar bulunmaktadır, kendinize iyi ve anlamlı İngilizce mutlu yıllar dilekleri lütfen bunlara bakın.
1kg kaç ml'dir? 1ml kaç kg'a eşittir? Gelin bu ağırlık birimlerini nasıl dönüştüreceğimizi öğrenelim!
Yapay zeka (YZ) sayesinde, insanların hayvan dilini anlayabilmesi gibi bir film hayali yakında gerçeğe dönüşebilir.
Her bir özelliğin ne işe yaradığını bilmek, iyi bir fotoğraf ile harika bir fotoğraf arasındaki farkı yaratabilir.
Yapay zeka sektörünün geleceğinin yapay zeka ajanları olduğunu düşünen OpenAI, mevcut araçlarla güçlü, "endüstriyel düzeyde" ajanlar oluşturmanın çok zor olduğunu kabul ediyor.
Podcast hayranları için harika bir haberimiz var. Pocket Casts şu anda web üzerinden ve Mac ile Windows uygulamaları üzerinden ücretsiz olarak kullanılabiliyor.
Bu hafta sonu Ay'a Mavi Hayalet iniş aracının ulaşmasıyla birlikte, dünyanın dört bir yanındaki gökbilimciler, gezegenimizin doğal uydusuna dair gerçekten sürükleyici ve hatta benzeri görülmemiş bir bakış açısı sağlayacak bir dizi çarpıcı yeni görüntüyü merakla bekliyorlar.
Golang'da Constant veya Const nedir? Go'da sabitlerin kullanımı hakkında bilmeniz gerekenler şunlardır.
Facebook kullanırken bazen hesabınız hacklenebilir, şifreniz kaybolabilir, hatta Facebook kayıt e-postanız bile kaybolabilir. Peki hem şifrenizi hem de kayıt e-postanızı kaybettiğinizde Facebook hesabınızı nasıl geri alabilirsiniz?