我想在Ruby中獲取變量或類型佔用的字節數。 Ruby on Rails中是否有與SizeOf
函數等效的函數?在Ruby中,它與Delphi SizeOf函數中的等價物是什麼?
2
A
回答
1
標量類型在ruby.c中定義。我不知道從Ruby內部學習寬度的方法。
補充:
你可以寫一個使用ruby.c確定標量大小的C程序。然後從你的Ruby sw中調用你的C程序。
+0
我不知道該怎麼做:( – Jett 2010-06-30 09:52:58
2
正如您從評論中看到的,Ruby中沒有這樣的方法。既然你不能直接在Ruby中操縱內存,並且沒有明確的「簡單」類型(一切都是對象),並且由於Ruby的動態特性,這種方法無論如何都不會很有用。
類有String
類的例外。由於在Ruby中字符串是字節序列,因此String#size
將返回字符串中數據的大小。
這應該足夠實用,但它是而不是內存中的字節數 - 除了數據本身外,String對象還會有其他內部變量。
另外請記住,在運行時可以在Ruby中動態修改所有的類和對象,這可以改變使用的內存量。試想一下將其他實例變量添加到之前沒有的對象的方法。
2
如果你想讓事情與你的Delphi代碼兼容,比找到Ruby的大小根本沒有幫助你。您需要在您的Ruby代碼中使用Delphi的大小。由於Delphi是靜態類型的,所以SizeOf
真的很方便 - 只需製作一個Delphi類型和相應大小的表格即可。如果您有數組,請將表中的值與元素數相乘。
相關問題
- 1. 什麼是Ruby中的「sys.stdout.write()」等價物?
- 2. Haskell中Ruby的pnormaldist統計函數的等價物是什麼?
- 3. 什麼是Java中的「this」函數的Ruby等價物?
- 4. 什麼是Delphi MatchesMask函數的C#等價物?
- 5. 什麼是Ruby的substr等價物?
- 6. Go defer的ruby等價物是什麼?
- 7. 什麼是preg_quote()的Ruby等價物?
- 8. 什麼是C?:operator的Ruby等價物?
- 9. 什麼是PHP $ _ENV的Ruby等價物?
- 10. 什麼是「pythonic」的Ruby等價物?
- 11. Python`itertools.chain`的Ruby等價物是什麼?
- 12. 什麼是Perl read()函數的Ruby等價物?
- 13. 什麼是在C++中的矢量函數圖的等價物
- 14. 什麼是C#中的Delphi FillChar的等價物?
- 15. Delphi中時間戳(%d)的等價物是什麼?
- 16. 什麼是數據流中的python zip函數的等價物?
- 17. 在Ruby平臺中JMX的等價物是什麼?
- 18. 什麼是SQL Server 2008中Oracle的LAST_DAY()函數的等價物?
- 19. 什麼是C++中的matlab smooth3函數的等價物?
- 20. 什麼是Haskell中的「::」等價函數?
- 21. Prototypejs中jQuery函數的等價物是什麼?
- 22. R中Stata函數inlist()的等價物是什麼?
- 23. 什麼是android中的dataWithContentsOfURL等價物?
- 24. RDFlib中rdf:ID的等價物是什麼?
- 25. Monotouch中的CGPDFDocumentGetCatalog等價物是什麼?
- 26. 什麼是C++中的instanceof等價物?
- 27. 什麼是VC7中的strtok_s等價物?
- 28. jquery中Ajax.updater的等價物是什麼?
- 29. 什麼是JSP中的sendmail等價物?
- 30. jQuery中Class.create()的等價物是什麼?
相當於什麼?我假設C. – Adrian 2010-06-30 03:48:46
虛擬內存不足? :-) – 2010-06-30 03:48:56
這是爲了調試目的還是什麼? Ruby中沒有這種方法,所以告訴我們你想完成什麼可能會幫助人們提供一種方法來實現它。 – Chuck 2010-06-30 03:50:22