C の 'typedef' と 'using' の違いは何ですか?
C 11 では、'using' キーワードは次のようになります。従来の「typedef」キーワードと同様の型エイリアスを作成するために使用されます。どちらの構文でも、既存の型に新しい名前を割り当てるという同じ結果が得られますが、セマンティクスには考慮すべき微妙な違いがあります。
「using」は「typedef」と同等ですか?
C 標準 (7.1.3.2) によれば、「using」により、同一のセマンティクスを持つ typedef-name が導入されます。 「typedef」を使用して定義されているかのように。これは、「using」では新しい型が作成されるのではなく、既存の型に代替名が提供されることを意味します。これらの名前間の変換は暗黙的です。
セマンティクスの違い
構文とセマンティクスは似ていますが、「using」キーワードは次の点で「typedef」と異なります。
template<typename T> using MyType = AnotherType<T, MyAllocatorType>;
以上がC の型別名の `typedef` と `using` キーワードの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。