私はこれに関するドキュメントを見つけることができませんでした。 RソースコードがNewEnvironment
とR_NewHashedEnv
を使用しているようですが、どちらもパブリックヘッダーにありませんので、ユーザーとして利用できないようです。新しいENVSXPを生成するためにどのような機能(またはどのコード行)を使用する必要がありますか?Cから新しいR環境を作成するにはどうすればよいですか?
答えて
あなたはallocSExp
をしたい:
/* C code in foo.c */
#include "Rinternals.h"
SEXP foo() {
SEXP res = allocSExp(ENVSXP);
return res;
}
> # R code (after running R CMD SHLIB foo.c)
> dyn.load("foo.dll")
> .Call("foo")
<environment: 0x016a4084>
[inline](http://cran.r-project.org/package=inline)を使用して1本または2本のライナーを使用してみませんか?また、あなたは割り当て、あなたは保護/保護を解除する必要はありませんか? –
@DirkEddelbuettel:悲しいことに、私はインラインで習慣的に使用していません(私にとってはF-)。この単純な例では、割り当て後にマクロを呼び出さないので、関数が終了する前に別の割り当て(および潜在的なGC)の可能性はありません。私はそれについてもっと明確にすべきだった。 –
私はあまりにも頑張っているのは明らかです。そこでは、最も基本的なSEXP割り当てがすべて必要なときに、ある種のallocEnv関数を探していました。 [はい、私は適切なyellyマクロを追加しました]。 allocSExpのような関数の使用について説明しているドキュメントを指し示すことができれば、ボーナスポイントが得られます。 –
- 1. 新しい環境でC#ファーストコード移行を再利用するにはどうすればよいですか?
- 2. MacOSのRパッケージをLinux環境からコンパイルするにはどうすればいいですか?
- 3. ピップ自体を仮想環境内から更新するにはどうすればよいですか?
- 4. Rの新しい環境に `` ... ``をどうやって渡すのですか?
- 5. Cで新しいユーザの環境変数を作成する
- 6. PHP Facebookアプリケーション用にオフライン環境を作成するにはどうすればよいですか?
- 7. yamlファイルに基づいてconda環境を作成するにはどうすればいいですか?
- 8. クラスタ環境でゼロデイタイムデプロイメントを行うにはどうすればよいですか?
- 9. GAEフレキシブル環境でデータストアのAPI環境を登録するにはどうすればよいですか?
- 10. コンドーム環境をルート環境に「クローン」するにはどうすればよいですか?
- 11. クリーンな環境でCからbashを呼び出すにはどうすればいいですか?
- 12. 遺伝的アルゴリズムの環境を作成するにはどうすればよいですか?
- 13. 古いコミットから新しいGitブランチを作成するにはどうすればよいですか?
- 14. EclipseStarterクラスからOSGi環境を使用できるようにOSGi環境を設定するにはどうすればよいですか?
- 15. C#リモーティングをテストするためにSSL環境をセットアップするにはどうすればよいですか?
- 16. キャプチャしたイメージ(スナップショット)から新しいVMを作成するにはどうすればよいですか?
- 17. Jenkinsジョブ固有環境変数を作成するにはどうすればいいですか?
- 18. ロックダウンされたPython環境を作成するにはどうしたらいいですか?
- 19. Objective-Cを使用して新しいNSWindowを作成するにはどうすればよいですか?
- 20. Android Studioでプロジェクトエクスプローラから新しいAndroidアクティビティを作成するにはどうすればよいですか?
- 21. XCodeで新しいC++プロジェクトを作成するにはどうすればよいですか?
- 22. 二重リンクリストに新しいノードを作成するにはどうすればよいですか? (C++)
- 23. SharePoint:リストテンプレートから新しいリストを作成するにはどうすればよいですか?
- 24. 既存のリストから新しいリストを作成するにはどうすればよいですか?
- 25. SSDT DACPACファイルから新しいデータベースを作成するにはどうすればよいですか?
- 26. テンソルフローの前のモデルから新しいグラフを作成するにはどうすればよいですか?
- 27. IntelliJから新しいアクティビティを作成するにはどうすればよいですか?
- 28. Windows 10のコマンドプロンプトから仮想環境をアクティブにするにはどうすればよいですか?
- 29. C#でDataGridを作成するにはどうすればよいですか?
- 30. C++でハッシュテーブルを作成するにはどうすればよいですか?
あなたがC++を可能にした場合、私はRcpp経由でそれを行う方法をお見せすることができます。 –