usingとtypedefが等価になる場合を発見したのでメモ。
1
2
3
4
5
6
7
8
9
10
11
|
-
|
!
-
|
|
!
| namespace hoge
{
class Foo;
}
namespace abc
{
using ::hoge::Foo;
typedef ::hoge::Foo Foo;
}
|
これは,::abcにFooという名前を定義する。
Fooは::hoge::Fooのことである。
という内容のもの。
ちなみに,下のように二度書きしてもコンパイラには怒られない。
1
2
3
4
5
6
7
8
9
10
11
12
13
|
-
|
!
-
|
|
|
|
!
| namespace hoge
{
class Foo;
}
namespace abc
{
using ::hoge::Foo;
typedef ::hoge::Foo Foo;
using ::hoge::Foo;
typedef ::hoge::Foo Foo;
}
|