問題タブ [chaiscript]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
756 参照

c++ - ChaiScript のトラブル

私はスクリプト言語 ChaiScript を c++ と Qt で使用しています。私はそのような関数を定義しました:

そして、アプリケーションペイントイベントでは:

エラーは次のとおりです。

'chaiscript::Eval_Error' what(): エラー: (1, 1) での評価中に「関数 'drawRect' でディスパッチする一致する関数がありません」

私は何を間違っていますか?

0 投票する
1 に答える
544 参照

javascript - QtScriptでオーバーロードされた演算子でカスタムc++クラスを使用することは可能ですか?

+、-、*などのオーバーロードされた演算子を使用してC ++クラスを作成し、「a + b」などのjs式が評価されるようにQtScriptEngineに何らかの方法で宣言できるかどうかを知っている人はいますか?彼らはC++側にいるのでしょうか?

0 投票する
2 に答える
471 参照

c++ - Chaiscript で C++ ネイティブ メソッドをバインドする際の継承の問題

このコードを使用して、ChaiScript で一連の Qt オブジェクトのいくつかのプロパティを検証します。

問題は、これが QCheckBox のネイティブ メソッドであるため、"isTristate()" 呼び出しが機能することです。一方、「isChecked()」呼び出しが失敗するのは、これが QAbstractButton クラスから継承されたメソッドであるためだと思います。

私は何を間違っていますか?

0 投票する
0 に答える
654 参照

node.js - C++ コードを別のスクリプト言語に公開する方法

背景: Web アプリケーションの一部である C++ DLL があります。私は、コードの一部を呼び出す UI が開発中であり、C++ コードも開発中の立場にあります。これにより、多くの統合の問題が発生します。これを解決するために、UI に関連しない別の言語 (UI に起こることと同様) で外部から C++ コードを呼び出し、その方法でコードをテストしたいと考えました。

私は現在、これを達成する方法を模索しています。それを行うためのツールについて、あなたの助けを求めたいと思います。

簡単に言えば、私がやりたいことは、UI レイヤーをバイパスしてテストを実行することです (おそらく、将来的には、自動化のために JSON/XML ベースのサーバーを作成します)。

さらに調査し、問題について考えた後に更新します。

  1. ChaiScirpt - 私が望むものには有望に見えますが、それを使用する他のプロジェクトを見つけることができないようです. 64ビットに対応していますか?非標準コードをどのように処理しますか。

  2. Swig - 素晴らしいプロジェクトのようですね。64 ビットはサポートされていませんか? 層を接着するのに多くの作業がありますか?

  3. node.js : Windows と互換性があるようです。V8 では js が提供されます。64 ビットをサポートし、優れた埋め込みガイドがあります。仕事量はどのくらいですか?

Windows 2003 でアプリを実行しており、VC6 を使用しています。VC11(VS2012)への移植中

適切なソリューションには、C++ インターフェイスの公開、長期的な開発、および 64 ビット/Unicode のサポートに関する最小限の作業が含まれます。

0 投票する
0 に答える
1364 参照

c++ - ChaiScript: クラスのデータ メンバー変数を公開する

Ogre::Vector2クラスを ChaiScriptに公開しようとしています。クラスのxandを公開したいのですが、フォーラムのこの投稿に従って、他の関数と同じように追加するだけでよいようです。しかし、それは私にはうまくいかず、次のエラーメッセージが表示されます。y

「関数 'x' の関数ディスパッチでエラーが発生しました」 パラメータ付き: (const class Ogre::Vector2).()

v.x:スクリプト内およびスクリプト内でアクセスしようとしましv.x()た。

モジュールの私の定義は次のようになります。

私は最初にクラスヘルパーマクロを介してこのクラスを定義しようとしましたが、このエラーが発生したため、このモジュールを手動で定義しました。彼らのフォーラムでは新しいトピックの作成と新しい投稿が無効になっているため (スパマーよ、DARN!)、この質問をここに投稿します。この問題を解決するための助けをいただければ幸いです。

注2: ChaiScript -4.2.0を使用しています

0 投票する
2 に答える
1336 参照

c++ - 複数の引数を持つ関数をバインドすると、C2027 が発生する

私は ChaiScript 5.3.1 を使用しており、関数を独自のクラス、具体的には Vector3 または 3 つの float のいずれかを取ることができる setPosition 関数にバインドしようとしています。

クラスとそれに関連するメソッドは次のように宣言されます。

そして、私はそれらを次のようにバインドしようとしています:

これにより、次のコンパイラ出力が得られます (Windows、MSVC 2013)。