MQL5'te her zaman kahramanlığa yer vardır! ;) - sayfa 7

 
o_O :
memcpy kullanılabilir mi?
 
Комбинатор :
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.

 
o_O :

İş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.


void f( int * value )
{
   //do something
}

{
   int x = 5 ;
   f(&x);
}

Adresi almak hazırlıktır. Bunun yerine

f (GetPtr (x)) peki, türü aktarmanız gerekiyor

 
o_O :

diyelim ki sınıfta bir fonksiyon var

SendParam( int type, void * param)

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.

sorun nedir, yasal boşluk:
şablon<tür adı T>
void SendReceiveParam(T&param);
....
{
ç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.
 
fxsaber :
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)

 
o_O :

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)

Kahretsin, en azından C sözdiziminde MQL'de de çalışması gereken bir kod örneğine sahip olabilir misiniz?
 
alexsis78 :
sorun nedir, yasal boşluk:
şablon<tür adı T>
void SendReceiveParam(T&param);

güzel ama uygun değil.

NULL ona geçirilemez

 
fxsaber :
Kahretsin, en azından C sözdiziminde MQL'de de çalışması gereken bir kod örneğine sahip olabilir misiniz?
void SendParam( void * );

int a= 10 ;
SendParam(&a);
SendParam( NULL );
 
o_O :
void SendParam( void * );

int a= 10 ;
SendParam(&a);
SendParam( NULL );
Örnek için teşekkürler! Ama kullanım amacını yakalamadım - kolaylık. Lütfen bir işaretçiyi nasıl kullanmak istediğinizi anlamak için SendParam'dan başka bir parça ekleyin, örneğin int.
o_o :

güzel ama uymuyor

Güzel olan tam olarak nedir? Şablonların önden uygulanması gibi. Yoksa bir şey mi kaçırıyorum?