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
memcpy kullanılabilir mi?
Numara )
Anlarsınız, SendParam'ı çağırmadan önce bazı hazırlıklar yaptıysanız, o zaman bir tür CInt sınıfına bir int sarmak daha kolaydır.
İşaretçi almanın yerel bir yolu yoktur. Yani, başlangıçta CInt sarmalayıcısını kullanmazsanız, işaretçileri kullanmanız çok zor olacaktır.
Artı tarafta, hazırlıkları da sen yapıyorsun.
{
//do something
}
{
int x = 5 ;
f(&x);
}
Adresi almak hazırlıktır. Bunun yerine
f (GetPtr (x)) peki, türü aktarmanız gerekiyor
diyelim ki sınıfta bir fonksiyon var
parametrenin tipinin (tip) ve parametrenin kendisinin iletildiği veya daha doğrusu ona bir işaretçi (void*).
parametre herhangi bir tipte olabilir (sınıf veya basit tip).
dersler tamam. ama basit koltuk değneği türleriyle.
şablon<tür adı T>
void SendReceiveParam(T¶m);
....
{
çift dval = 10;
SendReceiveParam(dval);
int değer = 10;
SendReceiveParam(ival)
...
// yapı nesnesine başvuru
struct AAA { geçersiz operatör=(int a) {} };
AAA yapı_değeri;
SendReceiveParam(struct_val);
}
int-pointer'lar aracılığıyla yasadışı yazmak?
Ve görevin bir koşulu girmedi. Görünüşe göre, örnekte bile elde etmek istediğiniz şeyin net bir formülasyonu yok.
Void* parametresine int için bir işaretçi iletmeye çalıştığımızı zaten iki kez yazdım.
( Memcpy varyantları, orta sınıf zaten önerildi, tekrarlamaya gerek yok)
Void* parametresine int için bir işaretçi iletmeye çalıştığımızı zaten iki kez yazdım.
(Memcpy seçenekleri, ara sınıf zaten önerildi, tekrara gerek yok)
sorun nedir, yasal boşluk:
şablon<tür adı T>
void SendReceiveParam(T¶m);
güzel ama uygun değil.
NULL ona geçirilemez
Kahretsin, en azından C sözdiziminde MQL'de de çalışması gereken bir kod örneğine sahip olabilir misiniz?
int a= 10 ;
SendParam(&a);
SendParam( NULL );
int a= 10 ;
SendParam(&a);
SendParam( NULL );
güzel ama uymuyor