クリックして評価とフィードバックをお寄せください
MSDN
MSDN ライブラリ
Visual Studio 2005
Visual Studio ドキュメント
Visual C++
C/C++ プログラムのビルド
C/C++ ビルド エラー
 コンパイラの警告 (レベル 1) C4788
このページは次のバージョンについて記述しています。
Microsoft Visual Studio 2005/.NET Framework 2.0

その他のバージョンについては、以下の情報を参照してください。
Visual C++ の概念 : C/C++ プログラムのビルド
コンパイラの警告 (レベル 1) C4788

エラー メッセージ

'識別子' : 識別子は '数値' 文字に切り詰められました

コンパイラによって、関数名に使用できる最大文字数が制限されます。コンパイラは EH/SEH コードの funclet を生成するときに、関数名とテキスト ("__catch"、"__unwind"、その他の文字列など) を先頭に付けて funclet 名を作成します。

作成された funclet 名が長すぎる場合、コンパイラはこれを切り捨てて C4788 を生成します。

この警告を解決するには、元の関数名を短くします。関数が C++ テンプレート関数またはメソッドの場合は、名前の一部に typedef を使用します。たとえば、次のようにします。

C1<x, y, z<T>>::C2<a,b,c>::f

これは次のように置換されます。

typedef C1<x, y, z<T>>::C2<a,b,c> new_class ;
new_class::f

この警告は、IPF (Itanium Processor Family) および x64 コンパイラでのみ発生します。

コミュニティ コンテンツ   コミュニティ コンテンツとは
新しいコンテンツの追加 RSS  注釈
Processing
© 2012 Microsoft. All rights reserved. 使用条件 | 商標 | プライバシー
Page view tracker