問題タブ [function-pointers]
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.
switch-statement - switch ステートメントの代わりに関数ポインターを使用するにはどうすればよいですか?
switch ステートメントの代わりに関数ポインターを使用するにはどうすればよいですか?
c - Cでポインタの2次元配列をどのように宣言しますか?
...typedefを使用せずに。
私の上司は、彼がかつてインタビューでこれを尋ねられたと主張し、彼が彼の答えを出したとき、インタビュアーは彼が貧弱なスタイルのためにtypedefを使うことができないと彼に言いました。
とにかく、彼は人々がそれを正しく理解できるかどうかを確認するために、通常は新しいプログラマーの昼食時に質問を投げかけるのが好きです。誰もそれを正しく理解することはできません(特にペンと紙またはコンピューターが手元にない場合)。次回彼が誰かを困らせようとするときの準備をしたい>:D
c++ - C++メソッドをObjective-Cメソッドに渡す
Expression
Objective-Cクラスで使用したいメソッドを持つC++クラス' 'があります' GraphVC
'。
そして私のObjective-Cクラス:
C ++オブジェクトとは対照的に、doubleを取り、doubleを返す関数ポインターを渡すのが最も簡単だと思いましたが、を使用してあまり成功していませんfunctional.h
。Objective-CのC++メソッドを使用する最良の方法は何ですか?
編集:あなたの迅速な応答をありがとう。少し詳しく説明させてください...C++で記述されたバックエンドがあり、Expression型のオブジェクトを操作します。有理数、多項式、単項式などのサブクラスがあります。私の最初のアイデアは、からmem_funを使用することでしたが、この方法でコードをコンパイルすることはできませんでした。また、bind1stを使用してthis
ポインターをバインドするのにも問題がありました。
- Objective-Cラッパーを作成することも可能ですが、既存の
evaluate()
関数を使用したいので、バックエンドとiPhoneGUIクラスの明確な分離を破りたくありません。 - グローバル式を使用したり、静的メソッドを使用したりすることはできません(任意の
Expression
インスタンスをプロットする必要があります)。
C ++メンバー関数(静的関数や既存のC関数ではない)をObjective-Cオブジェクトに渡す必要があることをより明確に述べる必要があります。誰かがC++を<functional>
使用して、メンバー関数をObjective-Cオブジェクトで使用できるポインターに変換することができましたか?それともObjective-Cラッパーを使用する必要がありますか?
c - 抽象関数ポインタ
10 個の関数ポインターの配列を作成するにはどうすればよいですか? 私が持っているのは for ループで、各反復で関数ポインターを別の関数に設定したいと考えています。それで:
c - Cの関数ポインタ
Cで「関数ポインタ」(および(たとえば)関数にパラメータがある)を作成するにはどうすればよいですか?
c++ - extern "C" 関数ポインターをどのように宣言しますか
だから私はこのコードを持っています:
そして、このエラーを受け取ります:
したがって、このエラーは、'log' が math.h で extern "C"'d であるためです。
foo() で関数ポインタ引数を宣言する方法を考えていたので、extern "C"'d 関数を処理します。
c++ - メンバ関数ポインタはコピー コンストラクタを呼び出しますか?
コードでメンバー関数のルックアップ テーブルを作成しようとしていますが、「コピーできない」クラスを拡張してブロックしたコピー コンストラクターを呼び出そうとしているようです。私が持っているのは次のようなものです。
エラーは、'(this->...' 行がコピー コンストラクターを呼び出そうとすることですが、これは表示されません。
c++ - メンバー関数へのポインターをハッシュして比較する方法は?
c++ メンバー関数へのポインターをハッシュ (std::tr1::hash または boost::hash) するにはどうすればよいですか?
例:
クラス Class のいくつかの異なるメソッドを指すいくつかの bool (Class::*functionPointer)() (静的ではない) があり、それらのポインターからメンバー関数をハッシュする必要があります。
どうやってやるの?
また、これらのメンバー関数ポインターを比較 (std::less) して、std::set に格納できるようにするにはどうすればよいですか?
c++ - クラスのメンバーであり、スレッドへの関数ポインタを返す関数を宣言する方法は?
foo
文字列を引数として取り、関数ポインターを返す関数 (たとえば ) を作成したいのですが、このポインターは次の関数を指しています。
また、関数 ( ) はクラスのメンバーであるため、定義して別のファイル (およびファイル)foo
で宣言します。.hpp
.cpp
宣言構文について教えてください。