VBScript hakkında konuştuğu her sitede, '&
' operatörü, dizgi birleştirme işleci olarak listelenir. Ancak, geçtiğimiz günlerde devraldığım bazı kodlarda, kullanılmakta olan '+
' operatörünü görüyorum ve bunun sonucunda herhangi bir hata göremiyorum. Bu kabul edilen bir alternatif mi? dizeleri sayı olarak yorumlanabilir zamanVBScript'in + ve & operatörü arasındaki fark nedir?
cevap
+ operatörü aşırı. & operatörü yalnızca dizgi birleştirme yapar. Bazı çevrelerde & operatörü en iyi uygulama olarak kullanılır, çünkü açık değildir ve bu nedenle aşırı yüklenme sonucunda istenmeyen etkilere sahip olamaz.
+
operatör geri teper olabilir. Kötü sürprizler istemiyorsanız dizeleri birleştirmek için & kullanın. & operatör değil ise
&
işleci, dizgecik birleştirme işlemini gerçekleştirir, yani işlenenleri dizelere dönüştürülmeye zorlar (ilk olarak CStr
'u çağırmak gibi). +
, sırayla, ifadelerden biri sayısal ise ekleme zorlar. Örneğin:
1 + 2
"1" + 2
1 + "2"
size
3
vermek oysa
1 & 2
, size 12
verir.
Yani, Belirsizliğe ortadan kaldırır çünkü dize Ulama için &
kullanılması önerilir. + Bir istisna durumu Bazı durumlarda
+1. Kabul edilen cevap, sayısal dizgileri sayılara dönüştüren vbscriptten bahsetmiyor. – baacke
; Örneğin aşağıdaki: - COM nesnesi kaynak olayı harekete bir özel durumu alacak
Sub SimpleObject_FloatPropertyChanging(fvalue, cancel)
'fvalue is a floating point number
MsgBox "Received Event: " + fvalue
End Sub
aşağıdakilerden birini yapmanız gerekir:
MsgBox "Received Event: " & fvalue
veya
MsgBox "Received Event: " + CStr(fvalue)
O her iki durumda da CStr(value)
; ancak dize birleştirme için yapılan yorumların başına & kullanılması neredeyse her zaman en iyi uygulamadır.
- 1. Python'da {} ve [] arasındaki fark nedir?
- 2. UNIX'teki $ @ ve $ * arasındaki fark nedir?
- 3. $ arasındaki fark nedir? ve PowerShell
- 4. '->' (ok operatörü) ve '.' Arasındaki fark nedir? (dot operatörü) Objective-C'de mi?
- 5. Mantıksal VEYA kısa devre OR operatörü arasındaki fark nedir?
- 6. ECMAScript 2016 exponentiation operatörü ve Math.pow() arasındaki fark
- 7. Fark() arasındaki fark nedir mustache.js
- 8. arasındaki fark nedir?
- 9. Java arasındaki fark nedir
- 10. arasındaki fark nedir?
- 11. arasındaki fark nedir?
- 12. Linq: Birleşimdeki == ile eşittir arasındaki fark nedir?
- 13. app.doScript ve $ .evalFile arasındaki fark nedir?
- 14. gVim ve gVim arasındaki fark nedir?
- 15. isAlpha ve isLetter arasındaki fark nedir?
- 16. Control.Enter ve Control.GotFocus olayları arasındaki fark nedir?
- 17. .got ve .got.plt bölümü arasındaki fark nedir?
- 18. AutomationProperties.AutomationID ve AutomationProperties.Name arasındaki fark nedir?
- 19. Android'de getDir ve getFilesDir arasındaki fark nedir?
- 20. R içinde `=` ve `<-` arasındaki fark nedir?
- 21. uint ve System.UInt32 arasındaki fark nedir?
- 22. PropertyChangeListener ve VetoableChangeListener arasındaki fark nedir?
- 23. XSS'de IDREF ve IDREFS arasındaki fark nedir?
- 24. Cacerts ve keystore arasındaki fark nedir?
- 25. GPLv2 ve GPLv3 arasındaki fark nedir?
- 26. VarIsEmpty ve VarIsEmptyParam işlevleri arasındaki fark nedir
- 27. ActiveSupport'ta mattr_accessor ve cattr_accessor arasındaki fark nedir?
- 28. Hashtable ve Dictionary arasındaki fark nedir?
- 29. RoutedCommand ve RoutedUICommand arasındaki fark nedir?
- 30. MySQL'deki boolean ve bool arasındaki fark nedir?
* "+ işleci aşırı yüklendi" * - * ne şekilde? VB'de – Wolf
@wolf + operatörü, içeriğe bağlı olarak hem ekleme hem de birleştirme yapabilir. –
Eh, bunu zaten okudum. * Aşırı yüklenen * kelimesini kendi istediğim aşırı yükledim, cevabı bu noktada biraz daha hassas olabilirdi. Dize numarası + numarası belirtmek için – Wolf