2017-05-27 46 views
2

當我在R Gui中寫入沒有括號的函數名時(例如library),我會看到完整的函數定義(幾頁代碼);在Visual Studio 2017環境中,我只看到以下內容:Visual Studio v.s.R函數定義R Gui

function (...) 
{ 
    if (nargs() == 0) { 
    invisible(rtvs:::send_notification("!Library")) 
} 
else { 
    base::library(...) 
    } 
} 
<environment: namespace:rtvs> 

爲什麼Visual Studio顯示縮略版?它們是否相同?我怎樣才能獲得完整的功能?

回答

2

讓我們研究一下你在複製的代碼。

if (nargs() == 0) { 
invisible(rtvs:::send_notification("!Library")) 
} 

rtvs是一個Visual Studio [R庫。代碼默認爲rtvs庫相關的功能,除非有參數,然後調用base::library()函數。在這種情況下,顯示的功能代碼不會縮寫(...代表傳遞給library()的任何參數)。

您也可以告訴該功能不是基於底部的<environment: namespace:rtvs>環境詳細信息的R代碼。

爲了查看R中所有函數類型的函數定義,How can I view the source code for a function?有一些很好的答案。