请问下面这个变量m是什么类型?NOTIFICATION 是一个 struct
class EventSensor; EventSensor<NOTIFICATION> m;
认证高级PHP讲师
EventSensor がクラス テンプレートの場合 (指定した宣言はクラス テンプレートの宣言ではありません)。変数宣言 EventSensor<NOTIFICATION> m; は、NOTIFICATION をテンプレート パラメーターとして特殊化したクラスのインスタンス m を宣言します。このクラスは「EventSensor<NOTIFICATION>」と呼ばれます (C++ 標準ではこのように呼ばれます)。
EventSensor<NOTIFICATION> m;
つまり、変数 m の型は EventSensor<NOTIFICATION> です。
EventSensor<NOTIFICATION>
テンプレート引数が提供されるか、関数およびクラス (C++17 以降) テンプレートのみの場合に推定される場合、それらはテンプレートの特殊化、つまり を取得するためにテンプレート パラメーターに置き換えられます。特定の型 または特定の関数の左辺値
cppreference、テンプレートから引用
はい、<NOTIFICATION> はクラス EventSensor 内の変数のタイプですが、クラスが定義され、NOTIFICATION でインスタンス化される場合は汎用です。
m は EventSensor<NOTIFICATION> 型で、これはクラス内で使用される変数の型、つまり m の変数の型です。 として
mStrList は ArrayList 型です
の要素 s=mStrList.get(1) の型は String です。
EventSensor がクラス テンプレートの場合 (指定した宣言はクラス テンプレートの宣言ではありません)。変数宣言
EventSensor<NOTIFICATION> m;
は、NOTIFICATION をテンプレート パラメーターとして特殊化したクラスのインスタンス m を宣言します。このクラスは「EventSensor<NOTIFICATION>」と呼ばれます (C++ 標準ではこのように呼ばれます)。つまり、変数 m の型は
EventSensor<NOTIFICATION>
です。cppreference、テンプレートから引用
はい、<NOTIFICATION> はクラス EventSensor 内の変数のタイプですが、クラスが定義され、NOTIFICATION でインスタンス化される場合は汎用です。
m は EventSensor
リーリー<NOTIFICATION> 型で、これはクラス内で使用される変数の型、つまり m の変数の型です。
として
mStrList は ArrayList 型です
の要素 s=mStrList.get(1) の型は String です。