コード内typedef FooBar Bar;
の式を介して型 FooBar にアクセスできますFoo::Bar
#include <typeinfo>
#include <iostream>
class FooBar {};
class FooBat {};
class Foo
{
public:
typedef FooBar Bar;
typedef FooBat Bat;
};
int main()
{
if( typeid(Foo::Bar) == typeid(FooBar) &&
typeid(Foo::Bat) == typeid(FooBat) )
std::cout << "All is well." << std::endl;
}
Javaに翻訳されますか?
型への間接参照に相当する Java は何でしょうか?
STL とブーストは、次のようなコードで満たされています。
typedef T value_type;
typedef T* iterator;
Javaが同様の汎用プログラミングイディオムをサポートしているかどうか疑問に思っています。コンパイル時に型の間接化を行うことができない場合でも、回答に興味があります。
編集 質問 (Java で重要なジェネリック プログラミングを行う方法) は、Java に精通している人々から関心を集めていません。現在、「C++」をタグとして追加しています。