簡體   English   中英

將類似於JavaScript的結構編譯為靜態快速C ++的最佳方法是什么?

[英]What is the best way to compile JavaScript-like structures to static, fast C++?

從非常類似於JavaScript的語言到C ++的編譯器開發中,我需要一種表示數據結構的方法。 JavaScript的主要數據結構是數組和哈希表。 數組更簡單:我可以使用無類型指針向量 因為JS數組是動態的,所以它必須是向量,因為JS數組可以容納任何類型的對象,所以它必須是指針,例如:

var array = [1,2,[3,4],"test"];

除此以外,我看不到其他表示方式(在那兒嗎?)。 對於哈希,我可以使用類似的方法,除了在訪問時包括字符串哈希步驟。

問題是:將JavaScript散列JIT編譯為實際的C ++對象,這可能比散列要快得多 這樣,恐怕我試圖生成類似C ++的嘗試實際上會導致比JavaScript版本慢的代碼!

  1. 那有意義嗎?
  2. 什么是對我的編譯器最好的方法?

如果這是AOT編譯器,則顯然只能處理在編譯時看到的哈希鍵。 在這種情況下,您可以將對已知鍵的哈希訪問更改為數組訪問,為每個已知鍵提供一個小的整數作為索引。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM