Yazma hakkında soru - sayfa 8

 
Ilya Malev :

Bu şans eseri Print(ColorToString(Color&(uint(-1)&65535)|(230<<16))); ile aynı şey değildir. ?

Sonuçlar açısından evet, eylem açısından hayır.

Kodlarınızı incelemeye devam ederek beynimi kıracağımdan korkuyorum.

Yani, alt çizgili büyük harflerin bolluğu vebağlam çözümleme işlemleri dışında yöntemlerinizdeki her şeyin harika (şaka değil) olduğunu söylemek istiyorum :)

Bence (bağlam çözümleme işleminin) aşırı yüklenmesine izin verilirse, o zaman kitaplıklarınızla birlikte astral düzleme gideceksiniz :lol:

Bir kütüphane yazmak değil, kullanımı uygun bir kütüphane bulmak zordur.

 
fxsaber :

Sonuçlar açısından evet, eylem açısından hayır. // evet, eyleme göre Print(ColorToString( Color= (Color&(uint(-1)&65535)|(230<<16)))); :)

Bir kütüphane yazmak değil, kullanımı uygun bir tane bulmak zordur. // Terminal özellikleri konusunda sahip olduğunuz deneyime sahip değilseniz, ikisini birden yapmanız zor :)

 
Ilya Malev :

Hayır, kullanılan tamamen farklı bir algoritma var. Kütüphane, değişkenin türünü umursamıyor.

 
fxsaber :

Hayır, kullanılan tamamen farklı bir algoritma var. Kütüphane, değişkenin türünü umursamıyor.

Bir değişken türü yoktur, ancak adı =, yani. atama. Eyleme ve sonuca göre, bir şey ortaya çıkıyor - değişken değişiyor.

Kütüphaneye fazla girmemiş olmama rağmen, bir şeyler yanlışsa çok özür dilerim.
 
Ilya Malev :

Bir değişken türü yoktur, ancak adı =, yani. atama. Eyleme ve sonuca göre, bir şey ortaya çıkıyor - değişken değişiyor.

Kütüphaneye fazla girmemiş olmama rağmen, bir şeyler yanlışsa çok özür dilerim.

Bir tamsayı değişkeni yerine örneğin bir MqlTick değişkenini değiştirebilirsiniz.

 
fxsaber :

Bir tamsayı değişkeni yerine örneğin bir MqlTick değişkenini değiştirebilirsiniz.

Seninle her şeyin evrensel olduğunu anlıyorum. Yakın zamanda bir sonraki dalda yapıların kopyalanması sorununu birlikte çözdük :) Bu görev şu anda önümde değil. Pekala, ayrıca baytlardan farklı türlerde birçok veri oluşturma ve bit alanlarını değiştirme işi yaptım, ancak sayı çok pratik kullanım olmadan isteğe bağlı :)

 
Ilya Malev :

Seninle her şeyin evrensel olduğunu anlıyorum. Yakın zamanda bir sonraki dalda yapıların kopyalanması sorununu birlikte çözdük :) Bu görev şu anda önümde değil. Ayrıca baytlardan farklı türlerde birçok veri oluşturma ve bit alanlarını değiştirme işlemi yaptım, ancak sayı isteğe bağlı ve pratik kullanım olmadan :)

Ayrıca A (Object) [Index] = 5 oluşturabilirsiniz diye başladım.

 
fxsaber :

Ayrıca A (Object) [Index] = 5 oluşturabilirsiniz diye başladım.

Tabii ki, her şeyle tek bir türde çalışıyorsanız - bayt veya bit kümeleri veya ints vb. o zaman mümkündür, ancak bu zaten farklı bir düzlemden, basit, sezgisel, kolay algılanan ve değiştirilebilir kod yapmakla ilgili değil.

 

Ayrıca int, double ve datetime arasında fark olmamasını da seviyorum. Burada, belki birileri fikirden hoşlanır (atama hızı açısından, aslında orijinal türlerden farklı değildir):

#property strict

class price{ public :
   int      operator | ( double p){ return ( int )(p* 100000 );}
   double operator | ( int p){ return ( double )p/ 100000.0 ;}};

class time{ public :
   int operator | ( datetime p){ return ( int ) uint (p);}
   datetime operator | ( int p){ return ( datetime ) uint (p);}};

price f;
time t;

void OnStart ()
 {
   int bid = f| Bid , ask = f| Ask , time1 = t| TimeCurrent (), time2 = t| TimeLocal ();
  
   Print (" Bid = ", f|bid, " Ask = ", f|ask, " Current time = ", t|time1, " Local time = ", t|time2);
 }  


Forex için garantili çalışır (fiyatlar 21474 tam parçadan fazla değildir) ve 2107'ye kadar uzanır.
 
Ilya Malev :

Ayrıca int, double ve datetime arasında fark olmamasını da seviyorum.

Onlar. aniden sinekleri pirzola ile karıştırırsanız, sorunu tespit etmeyi mümkün olduğunca zorlaştırmak için?