VC++2005の.NETにてアプリを作成しています。言語はC++/CLIです。
data.hに下記のような定義をしています。
【data.h】
namespace A {
namespace B {
enum class Hoge
{
aaa,
bbb
};
}
}
これを、Form1.hからヘッダファイルをインクルードして使用したいのですが、
下記のように記述すると、ビルド実行は可能なのですが、デザイナが読み込めなくなってしまいます。
【Form1.h】
#include "data.h"
・・・
using namespace A::B;
・・・
int hoi = (int)Hoge::aaa;//これを記述すると、デザイナが読み込めなくなる
・・・
この現象について、何か私の使用方法が間違っているのでしょうか?
C++/CLI初心者のため、このようなことでつまづいてしまっています。
解決法をご存知の方おられましたら、ご教示お願い致します。
【デザイナのエラー内容】
デザイナの読み込み時に 1 つ以上のエラーが発生しました。エラーは以下に一覧表示されます。コードの変更が必要なエラーもありますが、プロジェクトを再度ビルドすると解決できるエラーもあります。
フィールド 'aaa' がターゲット オブジェクトで見つかりませんでした。フィールドがターゲット オブジェクトのインスタンス変数として定義され、また正しいスコープを含んでいることを確認してください。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
ちょっと気になるのは
enum class Hoge { ... };
を
struct Hoge {
enum { ... };
};
としたらどうなるのかなぁというところ.
この回答への補足
御回答ありがとうございます。
試してみましたが、同様エラーが起きました。
色々自分で試した結果、
InitializeComponent()内で、
int hoi = (int)Hoge::aaa;
のように、enum値を「代入」すると、現象が起こるようです。
※下記のような場合だと起こりませんでした。
void InitializeComponent(void){
・・・
hoge();
}
void hoge(){
int hoi = (int)Hoge::aaa;
}
なぜこのような現象が起こるのでしょうか?
もしよろしければ、ご教示頂けませんでしょうか。
よく分かりませんが、さらに試した結果、
InitializeComponent()の下の方の、
#pragma endregion
の場所が初期状態と変わっていたのが原因のようです。
そもそも関数のコメントに、
/// デザイナ サポートに必要なメソッドです。このメソッドの内容を
/// コード エディタで変更しないでください。
と書いてあったので、自分で関数内を編集しなければ、
このような問題は起こらなかったと思うので、
今後はこの箇所をさわらないようにします。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- C言語・C++・C# PC画面を録画するプログラムでdllの読み込みエラー 1 2023/04/22 08:31
- その他(プログラミング・Web制作) Python - Excel で Webからデータを連続取得したいのですが エラーが出ます 1 2023/07/06 20:08
- その他(開発・運用・管理) WindowsからSSHでサーバーにあるファイルをダウンロードできない…。 3 2022/04/24 11:08
- C言語・C++・C# C言語のエラーについて 2 2022/07/11 13:56
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- その他(プログラミング・Web制作) ラズパイ上の、pythonのエラーについて 1 2023/04/12 23:27
- その他(プログラミング・Web制作) pythonでクラスで複数のメソッドを利用する方法 2 2022/04/15 04:17
- Windows 10 バッチファイルの記述法とルールについてアドバイスをお願いいたします。 1 2022/04/13 10:50
- Windows 10 プロファイルエラーについて 2 2022/12/16 09:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
python エラー
-
エクセルのエラーメッセージ「4...
-
バッチからsqlplusの接続エラー...
-
適切な変換関数が存在しない???
-
Handlesについて
-
fortranでプログラムを実行する...
-
コンパイルできません。
-
sys/time.hのインクルードがで...
-
エラー: ‘inval’ の記憶サイズ...
-
エクセルでマクロを実行すると...
-
fatal error LNK1112
-
フォームの作成中にエラーが発...
-
ビルド失敗 指定されたファイ...
-
レコードセットをcloseする所で...
-
visual C++ でビルドの中止がで...
-
Excelのエラーで困ってます。
-
デバッグ中のエラーのことで教...
-
c言語をgcc.exeにコンパイルし...
-
MakeSureDirectoryPathExists
-
Fortran コンパイルエラーについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
python エラー
-
エクセルのエラーメッセージ「4...
-
適切な変換関数が存在しない???
-
Excelのエラーで困ってます。
-
バッチからsqlplusの接続エラー...
-
fortranでプログラムを実行する...
-
HEWを使用しているのですが、こ...
-
コンパイルできません。
-
デバッグ中のエラーのことで教...
-
visual C++ でビルドの中止がで...
-
BC30002: 型 'ListItem' が定義...
-
Handlesについて
-
sys/time.hのインクルードがで...
-
ビルド失敗 指定されたファイ...
-
VB2008で定数に色の設定をした...
-
RightとLeft関数のライブ...
-
multiple definitionというエラー
-
WindowsからLinuxへの移植
-
HANDLEの宣言でのエラー
-
レコードセットをcloseする所で...
おすすめ情報