MQL5'te OOP hakkında sorular - sayfa 75

 

soru kaldırıldı, sadece imza işlevi görüyorum

 void deleteCTest(CTest * &t)

okuyamıyor

Mantıksal olarak, şöyle bir şey yazmalısınız:

 void deleteCTest((CTest *) &t)

Türe referans olarak bir işaretçi iletiyorum, ancak derleyici bu tür parantezlerle hatalar veriyor, ancak en azından şimdi en azından işlevi argüman olarak aldığımı anladım))

 
Igor Makanu :

soru kaldırıldı, sadece imza işlevi görüyorum

okuyamıyor

Mantıksal olarak, şöyle bir şey yazmalısınız:

Türe referans olarak bir işaretçi iletiyorum, ancak derleyici bu tür parantezlerle hatalar veriyor, ancak en azından şimdi en azından işlevi argüman olarak aldığımı anladım))

Sadece &...

Bana gelince, µl & - strict link

* - bağlantı adresini yazacağımız ve ardından bu değişkenle çalışacağımız değişkenin ataması, bu nedenle bazen kafa karıştırıcı olan sınıfı başka birine götürmesine izin verilir.

*& operatöre nadiren ihtiyaç duyulur

 
Alexandr Andreev :

*& operatöre nadiren ihtiyaç duyulur

tartışmam

ama yazıyorum, sadece MQL'de işaretçilerle çalışırken ne elde ettiğimizi ve ne elde ettiğimizi anlamaya karar verdim .... GetPointer() ile, onu anlamaya devam ediyor

;)

 

Benim için, sınıfa göre Kırmızı sıralama veya kasıtlı bir sıralama ağacı, liste gibi bir şey yazmak, ancak listenin kendisinde yerleşik bir ikili arama ile yazmak daha ilginç, bu listeyi sıralamak (genel olarak, bu terminoloji, belki zaten var, sadece o zaman (birinin renginin ağacı) olarak adlandırılıyor.

Aynı zamanda ve bir kerede her şeyin ortaya çıkacağını anlayın
 
Igor Makanu :

soru kaldırıldı, sadece imza işlevi görüyorum

okuyamıyor

Mantıksal olarak, şöyle bir şey yazmalısınız:

 void deleteCTest( (CTest *) &t)

Türe referans olarak bir işaretçi iletiyorum, ancak derleyici bu tür parantezlerle hatalar veriyor, ancak en azından şimdi en azından işlevi argüman olarak aldığımı anladım))

Her ihtimale karşı - işlev tanımında döküm gösterimi yerinde değil. sadece çağrıldığında. Ve * bekleyen bir işleve & iletirseniz, yayınlama gerekli değildir.

Ve yüksek sesle düşünmek - Gerçekten de, bir nesne işaretçisini referans olarak ve üçüncü taraf bir işlevde iletmek için böyle bir ihtiyaç olduğunu düşünüyorum, onu çivi / reenkarne edin, zavallı şey.

Bana öyle geliyor ki, bu dinamik nesnelerin atanmasına uymuyor.

Alexandr Andreev :

Benim için, sınıfa göre Kırmızı sıralama veya kasıtlı bir sıralama ağacı, bir liste gibi bir şey yazmak, ancak listenin kendisinde yerleşik bir ikili arama ile yazmak ve bu listeyi sıralamak (genel olarak, bu konuda zayıfım) daha ilginç. terminoloji, belki zaten var, sadece o zaman (birinin renginin ağacı) olarak adlandırılıyor

Aynı zamanda ve bir kerede her şeyin ortaya çıkacağını anlayın

kütüphane standardı bu konuya baktı mı? Her programcı sıfırdan bir çeşit sıralama yazmalıdır :)

 

MQL5 / MetaTrader 5'te 24 Sıralama Algoritmasının Görselleştirilmesi

Generic SB'nin kırmızı-siyah bir ağacı vardır (RedBlackTree)

Методы сортировки и их визуализация с помощью MQL5
Методы сортировки и их визуализация с помощью MQL5
  • www.mql5.com
В Сети можно найти ряд видеороликов с демонстрацией различных видов сортировок. Например, здесь представлена визуализация 24 алгоритмов сортировки. Это видео я и взял за основу, наряду со списком алгоритмов сортировки. Для работы с графиками в MQL5 разработана специальная библиотека Graphic.mqh. Она уже описана в статьях: в частности, здесь...
 
Igor Makanu :

tartışmam

ama yazıyorum, sadece MQL'de pointerlarla çalışırken ne elde ettiğimizi ve ne elde ettiğimizi anlamaya karar verdim .... GetPointer() ile, onu anlamaya devam ediyor

;)

Ancak ilginç bir şekilde, bir yıldan fazla bir süredir buradasınız ve sizi uzun zamandır FKÖ tartışmalarından hatırlıyorum. Ve şimdi MQL'de nasıl çalıştığı hakkında hiçbir fikriniz olmadığı ortaya çıktı. Soru şu ki, bunca zamandır MQL forumunda ne yapıyordunuz)

Belki de elbette dinamik nesneler kullanmadınız, ancak OOP'nin onlarsız nasıl yapabileceğini hayal bile edemiyorum. Ayrıca, tüm normal MQ kitaplıkları yalnızca işaretçiler için uyarlanmıştır.

Ve hedef de çok net değil. C# biliyorsanız neden MQL öğrenmeniz gerekiyor? Zorluklara ve zorluklara yapay olarak kendinizi mahkum edin... .Net kitaplıklarının MetaEditor'da kolayca alındığını biliyor musunuz? Doğru, yalnızca statik yöntemler kullanılabilir ve veri türleri sınırlıdır. Ancak etkileşim ve veri aktarımı organizasyonu için oldukça yeterlidir. Uzun zamandır kontrol etmemiş olmama rağmen, belki entegrasyon zaten daha derindir. İzlemeli.

 
Igor Makanu :

Forum katılımcılarının yarısından fazlasının OOP'nin MQL'de nasıl çalıştığını anladığını düşünüyor musunuz? - Bundan şüpheliyim, en azından eski zamanlayıcıların ve aktif katılımcıların mesajlarından bile MQL yeterlilik seviyeleri görülebilir.

buradaki gözlemlere göre, OOP esas olarak SB'nin kullanımı için kullanılır,

sınıflar, kalıtım, sanallaştırma, şablonlar, kendi kendini yetiştirmiş biri olarak bunu anlamak benim için çok zordu, biraz anladım ve bıraktım OOP, insanların robotlarında nasıl rahatsız olduklarını hayal bile edemiyorum - kullanmanız gereken tüm bunlar, sadece gösteriş yap. Yapılar maksimum

Bu çizime ihtiyacı olan Semka çizimiyle ayrıldı, sonra kendileri ve sevdikleri için para kazanmaya geldiler, geliştiriciler ona acımadı tabii. Peter, ticaret dışında her şey). Gereksiz işlevleriyle programcıların toz haline getirilmiş beyinleri

 
awsomdino :

sınıflar, kalıtım, sanallaştırma, şablonlar, kendi kendini yetiştirmiş biri olarak bunu anlamak benim için çok zordu, biraz anladım ve bıraktım OOP, insanların robotlarında nasıl rahatsız olduklarını hayal bile edemiyorum - kullanmanız gereken tüm bunlar, sadece gösteriş yap. Yapılar maksimum

genel olarak katılıyorum, ancak görevlere bağlı - amaç, modern programlama trendlerine göre bir tür doğru kod yazma sanatı değil, kazanma olasılığı

Test cihazında geçmiş ve ileriye yönelik testi geçebilecek güzel resimlerin nasıl çizileceğini öğrendim, şimdi hem test cihazını hem de ticaretin kendisini çevrimiçi ticaret için nasıl birleştireceğime dair bilgi topluyorum, burada büyük olasılıkla OOP'ye ihtiyacım var - I gerçek zamanlı stratejiler eklemek ve silmek, kaydetmek ve çalışma zamanında PC'den PC'ye geçebilmeyi planlıyor - aracın durumu hakkında çok fazla bilgi yok, ancak olağan şekilde - her şeyi yazmak işe yaramayacak sihirli sayıya

genel olarak, materyali analiz ederken

awsomdino :

Bu çizime ihtiyacı olan Semka çizimiyle ayrıldı, sonra kendileri ve sevdikleri için para kazanmaya geldiler, geliştiriciler ona acımadı tabii. Peter, ticaret dışında her şey). Gereksiz işlevleriyle programcıların toz haline getirilmiş beyinleri

Eh, yaratıcılık ilginçtir ve zihnin ısınması her zaman gereklidir, birkaç yıldır PC başına oturmadım - her şey tamamen yıprandı, o zaman, aslında, materyali sıfırdan yükseltin, bu yüzden hepsini alma programcıların bir şeyi başarma arzusu olarak yaratıcılığı - sadece yaratıcılık ve ısınma, iho, istisnalar olsa da - buradaki noktayı görüyorlar;)

 
Igor Makanu :

genel olarak katılıyorum, ancak görevlere bağlı - amaç, modern programlama trendlerine göre bir tür doğru kod yazma sanatı değil, kazanma olasılığı


Saber'den bir örnek almalı, gerçek amacını bilmiyorum ama onun eğer varsa ağacını gördüm) orada ihtiyacın olanı almalıydın. Buraya geldiğimde hemen nasıl yapacağıma dair bir sorum vardı ve nasıl uygulanacağını araştırdım, her şeyi yeniden okudum - gerçekten sadece zaman kaybettim, doğru uygulama yok, birçok makale ve her yerde kendim . Burada koddan pek bir şey anlamadığınızda ve 5 yol ayrımında durup nereye gideceğinizi düşünmeniz gerçekten sinir bozucu. Burada karlı bir ticaret sistemi bulup bulamayacağınıza dair bir soru bile yok, ilk soru - burada doğru optimal yolu bulabilecek misiniz) - Bu bizim sevgili MQL5'imiz.