hini #: Derleme sırasında oluşturulan ve çoğu biçimlendirme dili dosyalarında bulunan beş binden fazla uyarıdan nasıl kurtulabilirsiniz?
Kurtulamazsınız. Bu teknik olarak kaçınılmazdır çünkü işaretleme kodunu string dizisine yazarız. Bu veri türü geleneksel olarak herhangi bir değer ve kelime yazmak için uygundur.
Sonuçta bunun bir önemi yoktur, çünkü yapıcı anahtar sözcükler, isimler ve sayısal değerler arasında mükemmel bir ayrım yapabilir.
Bu yaklaşım nedeniyle herhangi bir veri kaybı yaşanmaz.
"Derleyicinin boğazına basmak" zorundayız, ama sonunda biz kazanıyoruz). Önemli bir şey değil.
Kayıt için. Programlama kurallarına ve derleyicinin uyarılarına saygı duyuyorum, ancak bu durumda daha iyi bir çözüm bulamadım. Bazı insanların bu yaklaşımı sevmeyebileceğinin farkındayım, ancak en uygun çözüm olduğu ortaya çıktı. Ve zararsız.
Реter Konow derleyici uyarılarına saygı duyuyorum, ancak bu durumda daha iyi bir çözüm bulamadım. Bazılarının bu yaklaşımı beğenmeyebileceğinin farkındayım, ancak en uygun çözüm olduğu ortaya çıktı. Ve zararsız.
Küçük bir hikaye:
İşaretleme kodunu nereye yazacağım sorusu ortaya çıktığında, iki ana seçenekle karşılaştım - dize dizisinde veya bir dosyada. Aklıma gelen artıları ve eksileri tarttıktan sonra, bir dizinin birkaç nedenden dolayı çok daha iyi olduğuna karar verdim. Birincisi, dizi içeriğinin yapıcı kod tarafından anında başlatılması ve işlenmesi. İkincisi, gerektiğinde okumak/üzerine yazmak için yapıcı/motordan kontrollerin bireysel niteliklerine ve özelliklerine yıldırım hızında erişim (bir dosya ile bu büyük bir sorun olurdu). Ve üçüncü olarak, özel bir OnChartEvent() olayı aracılığıyla bir kaynağa bir dizi göndermek çok daha kolaydır. Bu yüzden bir dizi seçtik. Ve uyarılar. Ne yapabilirsin ki? Hedefe ulaşmak için her zaman bir şeyleri feda etmeniz gerekir.
Ve işaretlemenin bir metin dosyasına yazılabileceği fikrinin "tabut kapağına" son çiviyi çakacak olan toplam neden:
Bir .txt dosyası, büyük yazım hataları olmadığından emin olmak için derlenemez. Bu, kullanıcı virgül, tırnak işareti, boşluk vb. ile bir şeyi kötü bir şekilde karıştırırsa, DERLEYİCİNİN BUNU BİLMEYECEĞİ anlamına gelir.
Ancak arayüzü oluşturmakta başarısız olduktan sonra kodu kötü yazdığını fark etmek ve her bir yazım hatasını aramak ve bulmak için içeri girmek zorunda kalacaktır. Eğer bir tanesini bile gözden kaçırırsa, prosedürün yeniden yapılması gerekecektir.
Bu, derleyici uyarılarının yokluğu için delicesine pahalı bir bedeldir.
Bu nedenle MQL'de, biçimlendirme kodu için string dizili varyantın alternatifi yoktur ve kullanılamaz. Ve derleyici uyarıları verili olarak alınmalıdır.
Not: Derleyici, bir anahtar kelime yanlış yazıldığında bile uyarı verir. Bazen intellisense yardımcı olur. Bir .txt dosyasında, anahtar kelimeleri yanlış yazarsanız, bilemezsiniz. Yani bir dosyanın bir diziye göre pratik bir avantajı yoktur.
Umarım bu özel durumda derleyici uyarılarından neden kurtulmamanız gerektiğini ayrıntılı olarak açıklamışımdır.
Derleme sırasında oluşturulan ve çoğu biçimlendirme dili dosyalarında bulunan beş binden fazla uyarıdan nasıl kurtulabilirsiniz?