タグ付けされた質問 「fully-qualified-naming」

1
関数定義のクラス外宣言子でクラス名を完全に修飾することはできません
このプログラムは、望ましくない解析の貪欲な行き止まりをもたらします。 struct float4x4 {}; class C { float4x4 M(); }; float4x4 ::C::M() { return float4x4{}; } :8:1:エラー:「float4x4」に「C」という名前のメンバーがありません。単に「C」という意味ですか? float4x4 :: C :: M() ^ ~~~~~~~~~~~ これは、末尾の戻り値の型を使用して「修正」できます。 auto ::C::M() -> float4x4 {} 今はすべて良い。 それで、heading-return-type宣言子構文を使用するときにクラス名を完全に修飾できないと思いますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.