編集できない (許可されていない) ヘッダー ファイルに次の構造体が定義されています。
struct Programma
{
enum {SERIE, FILM} programmaType;
char* titel;
char* zender;
time_t start;
time_t einde;
char* review;
union
{
Serie* serie;
Film* film;
} typeData;
};
私はもう試した:
Programma asd;
asd.programmaType = SERIE; //Error: identifier 'SERIE' is undefined
asd.programmaType = 0; //Error: a value of type 'int'cannot be assigned to an entity of type 'enum PRogramma::<unnamed>
'.' を置換するパラメーターとして Programma 構造体へのポインターを持つ関数内。「->」によって、同じエラーが発生しました。
ここで提案されているのと同じことをしていると思います ( ANSI C の構造体内で列挙型を使用する方法は? ) が、ランダム エラーが発生するのを止めることはできません。
編集: Visual Studio で asd と入力すると、何らかの理由で. 通常のドロップダウン ボックスが表示されますが、「Typedata」、「SERIE」、「FILM」のオプションがあります。個人的には、構造体の宣言に何か問題があると思いますが、それは与えられたものであり、編集する必要はありません。
EDIT EDIT: Visual Studio 2008 で C++ プロジェクトを作成していますが、すべてのソース ファイルは .h または .c です。これは私たちが「C」として教えられてきたことですが、それが実際にどれほど真実なのか疑問に思い始めています.