質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
C++11

C++11は2011年に容認されたC++のISO標準です。以前のC++03に代わるもので、中枢の言語の変更・修正、標準ライブラリの拡張・改善を加えたものです。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Swing

SwingはJavaに標準で付属するグラフィック関連のクラスライブラリを指します。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

1回答

1469閲覧

C++で作成したクライアントAPIをRubyで用いたい

退会済みユーザー

退会済みユーザー

総合スコア0

C++11

C++11は2011年に容認されたC++のISO標準です。以前のC++03に代わるもので、中枢の言語の変更・修正、標準ライブラリの拡張・改善を加えたものです。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Swing

SwingはJavaに標準で付属するグラフィック関連のクラスライブラリを指します。

プログラミング言語

プログラミング言語はパソコン上で実行することができるソースコードを記述する為に扱う言語の総称です。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2015/09/05 13:13

編集2015/09/06 08:26

C++でクライアントプログラムとサーバプログラムを作成したました。
今回作成したシステムをRubyから使用したいのですがその方法がわからず困っています。
今回使用したいクライアント側のAPIは
func(int a,float b ,float c....,class x)
のように1つのint と複数のfloatの変数、そして自作のclassを一つを取ります。
そのクラスもC++で定義されていて
class x{

}
のようになっています。
rubyのプログラム中から
func()
のように呼ぶことによってサーバプログラムに処理を投げたいのですがネットで調べてもいまいちピンとこないのでここで質問させていただきました。
最初にruby側でAPIを作ることも考えたのですがsendやrecvがrubyのTCPsocketでは使えないようなので断念しました。
どうやらswigというものを使うと今回のようなケースが可能だとわかったのですがどなたか詳細を詳しい方はいますでしょうか?
swigの詳細の使い方や、その他の方法を知っている方がいたら是非おちからをお貸しください。

PS. 動作環境はlinux (centos6.5)です.
最終的にはrailsのコントローラから呼び出して使いたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pi-chan

2015/09/06 07:26

ご使用のC++とRubyのバージョンは?実行環境はどのプラットフォームを想定されていますか?(Windows 7とかOS X 10.10など)
退会済みユーザー

退会済みユーザー

2015/09/06 08:27

Rubyは1.8.7 c++は11です
guest

回答1

0

Ruby1.8系なら、こちらとかこちらの例を参考にすれば実現できませんか?
それと、対象が多い場合にはSwigを使うと楽だと思いますが、一つだけの場合にはSwigを使用せずに直に拡張ライブラリを作成しても良いのではないでしょうか?
(上に貼り付けた最初のリンクの前半の説明をご参照ください)

投稿2015/09/06 11:57

pi-chan

総合スコア5936

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問