MQL5 hakkında geri bildirim - sayfa 7

 
Renat Fatkhullin :

Stilistin kurallarının açıklaması, birkaç sanatsal metin satırına yerleştirilemez.

Tarafımızdan belirtildiği gibi biçimlendirilir.

Merhaba!

Şekillendiricinin yalnızca sizin belirlediğiniz şekilde biçimlendirmesi ve başka hiçbir şeyin olmaması biraz garip. Açıklamama izin ver.

MT bir Windows platformudur. Windows için ana geliştirme aracı MSVC'dir, MT MFC'de yazılmıştır. Bu kitaplık, girinti ve biçimlendirme için standart olarak Kernighan ve Ritchie standardının bir türevini benimser. Bu nedenle, tüm hayatını MSVC'de geçirmiş (ve çoğu Windows altında) bir kişi sekme olarak 3 boşluk ve "{" den önce 2 fazla boşluk ve ayrıca ifadeler arasında boşluk olmaması ( if, for ...) ve sonraki parantez - birkaç çılgınca ve kodu okumaya müdahale ediyor. Anladığım kadarıyla corp gibi bir formatı benimsemişsiniz. standarttır, ancak bu diğer geliştiriciler için geçerli değildir.

Bu nedenle, birkaç stil seçeneği sunmayı öneriyorum, herkes çok büyük bir teşekkür edecek.

 
SeriousRacoon :

Merhaba!

Şekillendiricinin yalnızca sizin belirlediğiniz şekilde biçimlendirmesi ve başka hiçbir şeyin olmaması biraz garip. Açıklamama izin ver.

MT bir Windows platformudur. Windows için ana geliştirme aracı MSVC'dir, MT MFC'de yazılmıştır. Bu kitaplık, girinti ve biçimlendirme için standart olarak Kernighan ve Ritchie standardının bir türevini benimser. Bu nedenle, tüm hayatını MSVC'de geçirmiş (ve çoğu Windows altında) bir kişi sekme olarak 3 boşluk ve "{" den önce 2 fazla boşluk ve ayrıca ifadeler arasında boşluk olmaması ( if, for ...) ve sonraki parantez - birkaç çılgınca ve kodu okumaya müdahale ediyor. Anladığım kadarıyla corp gibi bir formatı benimsemişsiniz. standarttır, ancak bu diğer geliştiriciler için geçerli değildir.

Bu nedenle, birkaç stil seçeneği sunmayı öneriyorum, herkes çok büyük bir teşekkür edecek.

Küçük düzeltme, Microsoft'un kod stili bir K&R standardı değildir. K&R standardı esas olarak küme parantezlerinden farklıdır, PDP-11 ekranına ve diğer alfanümerik ekranlara mümkün olduğunca çok satır sığdırmak üzere tasarlanmıştır - 80 karakter * 25 satır. Bu arada, işte kitabın bir bağlantısı, belki birileri onu faydalı bulabilir http://rabus.ru/KernighanRitchie_C/index.html#content

 /* подсчет строк, слов и символов */
main()
{
     int с, nl, nw, nc, state;
    state = OUT;
    nl = nw = nc = 0 ;
     while ((с = getchar()) != EOF) {
        ++nc;
         if (c == '\n' )
            ++nl;
         if (c == ' ' || c == '\n' || c == '\t' )
            state = OUT;
         else if (state == OUT) {
            state = IN;
            ++nw;
        }
    }
     printf (“%d %d %d\n”, nl, nw, nc);
}

Aksi takdirde, katılıyorum ve bu konuda 100.500 kez yazdım. Şahsen, tüm MQL üçüncü taraf metinlerini stüdyoya sürüyorum ve orada yeniden biçimlendiriyorum.

 
Alexey Volchanskiy :

Küçük düzeltme, Microsoft'un kod stili bir K&R standardı değildir. K&R standardı esas olarak küme parantezlerinden farklıdır, PDP-11 ekranına ve diğer alfanümerik ekranlara mümkün olduğunca çok satır sığdırmak üzere tasarlanmıştır - 80 karakter * 25 satır. Bu arada, işte kitabın bir bağlantısı, belki birileri onu faydalı bulabilir http://rabus.ru/KernighanRitchie_C/index.html#content

Aksi takdirde, katılıyorum ve bu konuda 100.500 kez yazdım. Şahsen, tüm MQL üçüncü taraf metinlerini stüdyoya sürüyorum ve orada yeniden biçimlendiriyorum.

Evet, açılış dirseğiyle arasındaki fark, bunun dışında benzerdir, bu yüzden ona "varyant" adını verdim.

MT ortamında Kullanıcı Araçları olsaydı, üçüncü taraf bir güzelleştiricinin vidalanabilmesi daha kolay olurdu, ancak böyle bir olasılık yok. Alternatif olarak, kullanıcı araçlarından stdout çıktısı desteği olan bir üçüncü taraf düzenleyici kullanabilirsiniz (klasik Editplus'tır, ancak daha ilginç çözümler vardır), ancak bu zaten fazladan bir koltuk değneğidir. UniversalIndentGUI'de yapılandırılmış Unscrutify kullanıyorum.

 
urusov :

Rica ederim:

https://www.mql5.com/ru/forum/35326

https://www.mql5.com/en/forum/1111/

Bir işaretçiye farklı bir adres atayamayacağım, yaygın olarak kullanılan bir dili adlandırın? Aynı türden bir başvuruya başka bir nesneye bir tür başvuru atayamayacağım en az bir yönetilen dil de adlandırın? Dilinizin bu sınırlamaları nedeniyle başka nerede bir yapıcı veya kopyalama işlevi tanımlamak zorunda kalacağım?

Ve eğer kontrol edilebilirlik sizin için çok önemliyse, o zaman neden diğer kontrollü diller benzer kısıtlamalar getirmiyor?

Şahsen benim için, her şeyden önce güvenlik ve kontrol edilebilirlik değil, fikri hayata geçirme hızımdır, bu fikir ticareti bağlamında son derece doğrudur, buna katılmayanlar ya kendi değerlerinin değerini abartırlar. sistemler veya programlama uğruna program ve belirli bir sonuç için değil.

C#, bilirsiniz, artık endüstriyel bir dildir, iş/internet uygulamalarında C++'ın yerini almıştır. Yani orada hiçbir işaretçi yok, daha doğrusu onlar, ama güvensizler ve hiç kimsenin güvenli olmayan koda ihtiyacı yok, sadece kişisel el sanatları için.
 
Alexey Volchanskiy :
C#, bilirsiniz, artık endüstriyel bir dildir, iş/internet uygulamalarında C++'ın yerini almıştır. Yani orada hiçbir işaretçi yok, daha doğrusu onlar, ama güvensizler ve hiç kimsenin güvenli olmayan koda ihtiyacı yok, sadece kişisel el sanatları için.
Sea Sharp'ın sıradan insanlar için herhangi bir faydası var mı?
 

Ve neden çıplak işaretçi bu kadar korkunç? Sıkı aliasing optimizasyonlarını reddederseniz, işaretçiler genellikle oldukça güvenli bir şeydir (msvc tam da bunu yaptı).

Genel olarak, güvenlik hakkında konuşmak, daha önce de söylendiği gibi, gerçek nedenlerin sadece bir perdesidir. Ve nedeni basit bence - dll'ku'ya aktarılacak fonksiyonların adreslerini öğrenmenin bir yolu yok. Gömülü bir sistem dış dünyaya ihtiyaç duymaz.

 
Yoksa MK normal geri aramalara karşı değil mi? Bir fikrim var, konu tabu değil mi?
 
Alexey Volchanskiy :
C#, bilirsiniz, artık endüstriyel bir dildir, iş/internet uygulamalarında C++'ın yerini almıştır. Yani orada hiçbir işaretçi yok, daha doğrusu onlar, ama güvensizler ve hiç kimsenin güvenli olmayan koda ihtiyacı yok, sadece kişisel el sanatları için.

Bu arada!

Her nasılsa çok uzun zaman önce C ve Pascal dillerinin çok mecazi bir karşılaştırmasıyla tanıştım.

C dili, bu 180 km / s hızında bir dağ yolunda harika bir Ferrari yolculuğu,

ve Pascal dili, geniş tek yönlü bir yolda 40 km/s hızla sessiz bir limuzin yolculuğudur.

Onlar. C'nin gerçek erkeklere yönelik olduğu ima edildi, çünkü :-)

C'de, işaretleri kendiniz takip etmeniz gerekir :-) , aksi takdirde keskin bir dağ dönüşünde otoyoldan uçabilirsiniz, yani. dil zayıflar için değildir.

C, işletim sistemlerinin ve yardımcı programların, sürücülerin dilidir. C dili, kullanıcılar için işletim sistemleri ve yardımcı programlar yazan profesyoneller tarafından yazılmıştır.

Öğrencilere başlangıçta Pascal'da yazmaları öğretildi, Pascal bir öğretim dili olarak yazılmıştır.

Araçların amaçları ve uygulamaları arasındaki fark açıktır.

MQL dili esasen C'nin bir türevidir, MetaQuotes geliştiricilerinin seçimi profesyonel olarak çok doğrudur.

 
Yuriy Zaytsev :

Bu arada!

Her nasılsa çok uzun zaman önce C ve Pascal dillerinin çok mecazi bir karşılaştırmasıyla tanıştım.

C dili, bu 180 km / s hızında bir dağ yolunda harika bir Ferrari yolculuğu,

ve Pascal dili, geniş tek yönlü bir yolda 40 km/s hızla sessiz bir limuzin yolculuğudur.

Onlar. C'nin gerçek erkeklere yönelik olduğu ima edildi, :-)

C'de, işaretleri kendiniz takip etmeniz gerekir :-) , aksi takdirde keskin bir dağ dönüşünde otoyoldan uçabilirsiniz, yani. dil zayıflar için değildir.

C, işletim sistemlerinin ve yardımcı programların, sürücülerin dilidir. C dili, kullanıcılar için işletim sistemleri ve yardımcı programlar yazan profesyoneller tarafından yazılmıştır.

Öğrencilere başlangıçta Pascal'da yazmaları öğretildi, Pascal bir öğretim dili olarak yazılmıştır.

Araçların amacı ve uygulamasındaki fark açıktır.

MQL dili esasen C'nin bir türevidir, MetaQuotes geliştiricilerinin seçimi profesyonel olarak çok doğrudur.

Evet, genel olarak, hangi dilde yazılacağı ne fark eder?

(Sürücüleri Pascal ve istediğiniz herhangi bir şekilde yazabilirsiniz)

Neyi ve nasıl yaptığınızı anlamak önemlidir ve programlama dili onuncu şeydir!