我在R中工作,我想定義一些我(或我的合作者之一)無法更改的變量。在C++中,我會這樣做:在R中聲明常量變量
const std::string path("/projects/current");
如何在R編程語言中執行此操作?
編輯爲清楚:我知道,我在R中可以這樣定義字符串:
path = "/projects/current"
我真正想要的是一個語言結構,保證沒有人能夠改變一個名爲「變量關聯的值路徑。」
編輯迴應評論:
這在技術上是真的,常量是編譯時保證,但它會在我的腦海有效的R解釋會拋出停止執行並顯示錯誤消息。例如,看一下當您嘗試將值分配給一個數值常量會發生什麼:
> 7 = 3
Error in 7 = 3 : invalid (do_set) left-hand side to assignment
所以我真正想要的是一個語言功能,使您可以賦值一次,只有一次,應該有某種當您嘗試將新值分配給聲明爲const的變量時出現錯誤。我不在乎錯誤是否在運行時發生,特別是如果沒有編譯階段。這在技術上可能不是維基百科定義中的常量,但它非常接近。它看起來在R編程語言中是不可能的。
你有無法改變一次分配變量混亂的常量。 – 2009-06-01 21:09:21
@大衛洛克 - 好點。我試圖在問題中澄清這一點。 – 2009-06-01 22:43:09