Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Bir fonksiyondan bir dizi nasıl döndürülür? Şimdiye kadar geçici bir çözüm buldum, ancak açıkçası bunu "kafa kafaya" yapmanın bir yolu olmalı )).
Bunu yapmanın bir yolu yok... diziye bir işaretçi dışında. Örneğin:
CArrayDouble *Function(void);Kafa kafaya değil, ama bu bölümdeki gibi oldukça standart bir yaklaşım:
Genel olarak, döndürülen dizi bir parametre referansıdır...Evet, teşekkürler. Ben sadece hemen denedim
return *x; alışkanlık dışında, C++'da olduğu gibi ))
yerine
return GetPointer(x)
anladım ))
Yeni makale MQL5 Programlama Temelleri: Diziler yayınlandı:
Yazar Dmitry Fedoseev
1 Soru:
Derleyici böyle bir yapıyı yasaklar. Neden?
double qwerty(double &q[]);
#import
Bir dll yapıyorum ve ona bir dizi işaretçisi aktarmak istiyorum.
Ama bunu nasıl yapacağımı bulamıyorum.
Bir sorun var.
C++'ın bir benzerine ihtiyacım var
double qwerty(double *q);
double *q;
q = yeni çift [100];
qwerty(q);
MQL5'te nasıl yapılır...
Kodunuz için teşekkürler, yazmak için bana biraz zaman kazandırdı. MQL5 Array nesnesini (double, int vb.) kullanmaya çalıştım ve sadece hayal kırıklığına uğradım. Gönderinize geldim ve dizileri yeniden boyutlandırmak için kodunuzu buldum, bu harikaydı teşekkürler. Kodunuzu herhangi bir veri türüne hitap edecek şekilde değiştirdim. Sadece Contains (Arama yöntemi) yöntemini nesneler için kullanmaya çalışmayın çünkü nesneler referans olabileceğinden çalışmayabilir, bunu test etmediğimden emin değilim. C#'ı MQL5 içinde yeniden oluşturmaya çalışıyorum, bu nedenle kısaltmalar benzer :)
Tanrı korusun !!!
O zaman onları şu şekilde bildirebilirsiniz:
ve şöyle oluşturabilirsiniz:
ve kodda onları normal bir sınıf gibi kullanırsınız:
Tamam, MQL'in İngilizce sürümünü deneyelim.
Kod gönderiniz için teşekkürler. Bana zaman kazandırdı. MQL dizilerini kullanmayı denedim ve kafa karıştırıcıydılar. Daha sonra orada olması gereken temel yapıları bir kez daha yazmam gerektiği için çok üzüldüm AMA sonra diziler ve bunların dinamik olarak nasıl büyütüleceği / artırılacağı konusunda bana biraz araştırma süresi kazandıran kodunuzu buldum. HARİKA teşekkürler.
Umarım size geri verebilirim! Aşağıdaki kod tüm veri türleri için çalışır. Nesneler üzerinde de çalışacaktır ancak Contains (arama) yöntemi çalışmayabilir. Ben sadece (double, int, bool) tipleri üzerinde test ettim. String de size sorun çıkarabilir ve kodun genişletilmesi gerekebilir.
Daha sonra ihtiyacınız olan tüm tipler için bu şekilde bildirimde bulunabilirsiniz:
umarım bu herkese yardımcı olur