Forum: Ders Arası RSS
Atama işlemi ile ilgili soru
Avatar
huseyin #1
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Atama işlemi ile ilgili soru
Merhaba dün üzerinde kafa yormama rağmen cevabını bulamadığım bir soru ile karşınızdayım
Aşağıdaki sorunun çözümü için nasıl bir yöntem uygulamam gerekir
subt=dbase["tablo1"];
    dd=subt["anahtar1"];
    dd.add("merhaba");
    subt["anahtar1"]=dd; // Gördüğünüz gibi burada
    dbase["tablo1"]=subt; //ve burada yeniden atama yapmak zorundayız 

benim istediğim ise değer atadığım zaman o değerin o değere eşit olması birindeki değişiklik öbürünü de etkilemeli
Huseyin
acehreli (Moderatör) #2
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
opIndex ile döndürdüğün tür bir struct türü, değil mi? struct'lar değer türü olduklarından işlevlere gönderilirken ve döndürülürken kopyalanırlar.

Sanırım dönüş türünü ref olarak işaretlemen yeterli olacak. Şurada 'ref işlevler' başlığında bazı örnekler var:

  http://ddili.org/ders/d/islevler_diger.html

Ali
Avatar
huseyin #3
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Teşekkür ederim hocam onuda çözdük :)
Huseyin
Avatar
Salih Dinçer #4
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yanıtlanan mesaj #1
huseyin325325:
Gördüğünüz gibi burada ve burada yeniden atama yapmak zorundayız
Neden zorundayız? Bence konuyu ilk defa okuyanın da anlayacağı derecede soruyu yapılandırmak lazım. Yani olayı basite indirgeyerek şunun üzerinden gidersek:
s = Sinop["Merkez"];
d = s["falanca ilçesi"];
d.add("yeni ilçe olan mahalleler topluluğu");
s = d;
Sinop["Merkez"] = s["falanca ilçesi"];
Sanırım burada hiyerarşi karışmış...

Peki neden önce Sinop Merkezi'in taşıyıcısını sonra kendisini falanca ilçesine eşitliyoruz?
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
huseyin #5
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hocam şimdi

Database dbase=Database("falanca şehir");
Subtable subt; // bu bir ilçe
Data dat; // bu bir mahalle yada siz ne diyorsanız 
dbase.open();
subt=dbase["falanca ilçesi"];
dat=subt["falanca mahalle"];
dbase.close();

Benim hiyearşim bu benim tekrar eşitleme olayını şuanda kaldırdık artık altta yapılan işlem direkt db yi etkileyecek
Huseyin
Bu mesaj huseyin tarafından değiştirildi; zaman: 2012-07-16, 14:01.
Avatar
huseyin #6
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Malesef olmadı dün gece yanlış gördüm herhalde ref ile işaretlesemde tekrar birbirine atama yapmam gerekiyor
Huseyin
Avatar
huseyin #7
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Baktım da şöyle bir şey aklıma geldi

Database dbase=Database("db");
    Subtable subt;
    dbase.open();
    
    subt=dbase["tablo1"];
    subt["anahtar1"].add("hello");
    
    dbase.close(); //save() işlemini de içerir 

Bu sizce nasıl bana daha mantıklı göründü
Huseyin
acehreli (Moderatör) #8
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Olabilir. Hem std.stdio.File'a da benzemiş olur. Onun da save() işlevi yok.

Ali
Avatar
huseyin #9
Üye Haz 2012 tarihinden beri · 363 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Hocam bir de koşullama olayını nasıl yapalım sizin görüşlerinizi alabilir miyim sql de "where" komutu var ya onun gibi şekil olarak nasıl olsun diye düşünmekteyim
Huseyin
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Forum: Ders Arası RSS
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-18, 04:07:33 (UTC -08:00)