2016-04-12 43 views
0

Julia'daki bir işlevin argüman türünü tanımlamakla ilgili bir problem yaşadım. Bir taraftan, tür tanımlanmışsa kodun çalışması daha hızlı olacaktır: örneğin bir tam sayı için Int64. Diğer yandan, fonksiyona her dediğimizde, basit bir sayıyı işleve geçirmek, örneğin, arayarak: bir aşırı sıkışıklık gibi görünüyor. İyi stil için tavsiye nedir?Julia işlev argüman türü def

cevap

4

Julia ile, genellikle bir işlevin argümanının türünü belirtmenin daha hızlı yapacağı doğru değildir. Argümanın türü yoksa (yani Any) veya sadece soyut bir türü varsa (örneğin, Int64 yerine Integer), Julia herhangi bir dönüşüm yapmak yerine, işlevi çağırmak için kullanılan somut türler için yöntemler üretebilir. BTW, sözdizimi aslında convert(Int64, a) şeklindedir, dönüştürmek istediğiniz tür, önce gelir.