"" に関する原因と対処

このコンパイルエラーの原因と対処に関して説明します。

スポンサード リンク

Microsoft Visual C++にて以下のソースでコンパイルエラーが発生します:

コンパイルエラーメッセージ:
error C2523: 'main::<unnamed-tag>::!unionTest': finalizer が、別の名前で宣言されています。

ソース(バグ有り):

//共用体の宣言のサンプルプログラム
//あるメンバに値を代入すると、他のメンバが上書きされることを確認する
#include<string.h>
#include <stdio.h>
int main()
{
//共用体の宣言
union {
int x;
int y;
!unionTest;
unionTest.x=1;
unionTest.y=2;
// xは1のはずですが 2 で上書きされていることが分かります。
printf("%d %d",unionTest.x, unionTest.y);
return 1; }


原因:


対処:


ソース(修正済み):

//共用体の宣言のサンプルプログラム
//あるメンバに値を代入すると、他のメンバが上書きされることを確認する
#include<string.h>
#include <stdio.h>
int main()
{
//共用体の宣言
union {
int x;
int y;
}unionTest;
unionTest.x=1;
unionTest.y=2;
// xは1のはずですが 2 で上書きされていることが分かります。
printf("%d %d",unionTest.x, unionTest.y);
return 1; }

スポンサード リンク



[コンパイルエラーコード、メッセージに戻る]