問題タブ [template-function]
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.
c++ - 特殊機能付引き離し機能タイプ
この質問への答えは、クラス テンプレートを使用して関数型を分離します。
ここで何が行われているかを調べたので、書き直そうとしましたfunction_args
。decltypeargs
テンプレートの必要性をなくすために、関数を使用してこれを実行しようとしました。しかし、不適切な構文に陥っていることに気付きました。
私の希望は、 を呼び出すのではなく、型decltype(myTry<decltype(foo)>())
を取得するために呼び出すことでした。関数宣言でこれを行う方法はありますか?tuple
decltypeargs<decltype(foo)>
c++ - Variadic テンプレート関数がリンクしない
cmds.cpp には次のものがあります。
cmds.h には次のものがあります。
main.cpp には次のようなものがあります:
コンパイラは喜んでコンパイルします。ただし、リンカーは次のように述べています。
Makefile フラグ:
何が起こっている?
c++ - クラスのメンバー関数としてオーバーロードされた場合、逆参照演算子 (*) はどのように機能しますか?
演算子のオーバーロードに関する書籍やスタック オーバーフローの記事を調べたところ、次のことがわかりました。
オーバーロードされた演算子がメンバー関数の場合、これは左側のオペランドにバインドされます。メンバー演算子関数には、オペランドの数よりも 1 つ少ない (明示的な) パラメーターがあります。
(Addison Wesley、C++ 入門)
したがって、私の質問は、*
(逆参照) 演算子には左オペランドがないため、どのようにしてそのパラメーター (オブジェクト自体またはthis
) を取得するのですか?
c++ - C ファイルからのテンプレート関数の呼び出し
テンプレートが C で定義されていないことはわかっています。ただし、私の場合、C で記述されたアプリケーションで使用される C++ で記述された API があります。API にテンプレート関数を追加したいと考えています。この関数は、abc.cpp で次のように定義されています。
abc.hpp の宣言は次のとおりです。
この関数は xyz.c から次のように呼び出されます。
ただし、abc.cpp と abc.hpp の両方で次のエラーが表示されます。
extern "C" を使用しても役に立ちません (エラーにつながります: C リンケージを持つテンプレート)。私の疑問は、このテンプレート関数をそのような方法で呼び出すことさえ可能ですか? はいの場合、どうすればこれを達成できますか? ありがとうございました。
c++ - テンプレート クラス タイプ固有の関数
わかりましたので、このテンプレート クラスがあります。これは、一方向リストのようなものです。
そして、この内部関数 print があります
ご想像のとおり、リストの内容を最初から最後まで出力します。ただし、テンプレートは T としてクラスを取ることができるため、まさにその場合に Print() の異なる実装が必要になることが想像できます。たとえば、別のクラス Point があります
だから私はポイントのために特別に設計されたプリントが欲しい. 私はこれを試しました:
しかし、コンパイラは私に教えてくれます
けれど
私にとっては、同じ機能のようです。どうしたの?また、T 固有のテンプレート クラス関数をどのように記述すればよいでしょうか。
c++ - c++で2つのイテレータを取るテンプレート関数を定義する方法は?
1 つは begin() で、もう 1 つは end() である 2 つの反復子を取るテンプレート関数を定義したいと思います。これはC ++でどのように達成できますか?
これまでのところ、次のことが考えられます。
これは間違っていますか?
friend-function - テンプレート クラスのフレンド テンプレート関数を定義する方法
array_T
汎用配列であるテンプレートクラスとテンプレート関数linear search TEMPLATE.h
があり、クラスのフレンドとして宣言されているため、クラスのメンバー関数と動的割り当て配列であるクラスのデータメンバーarrayTemplate.h
を使用できますgetArraySize()
a
arrayTemplate.h
線形検索 TEMPLATE.h
main.cpp
これらは私が得たエラーです
線形検索 template.h(8): エラー C2065: 'array_T': 宣言されていない識別子
線形検索 template.h(8): エラー C2065: 'オブジェクト': 宣言されていない識別子
線形検索 template.h(8): エラー C2275: 'T': この型を式として不正に使用しています
線形検索 template.h(6): 注: 'T' の宣言を参照してください
線形検索 template.h(8): エラー C2146: 構文エラー: 識別子 'desiredData' の前に ')' がありません
main.cpp(14): エラー C2660: 'linearSearch': 関数は 2 つの引数を取りません
========== ビルド: 0 成功、1 失敗、0 最新、0 スキップ ==========