-------------------------------------------------------------
abc.h
-------------------------------------------------------------
#pragma once
namespace hoge {
using namespace System;
using namespace System::ComponentModel;
using namespace System::Collections;
using namespace System::Windows::Forms;
using namespace System::Data;
using namespace System::Drawing;
using namespace System::Diagnostics;//←ここを追加
以下略
-------------------------------------------------------------
abc.cpp
-------------------------------------------------------------
#pragma endregion//この直下に定義
Stopwatch^sw = gcnew Stopwatch();//ここに記述
-------------------------------------------------------------
これでグローバル変数として
ヘッダーファイルからもCPPファイルからも
Stopwatchを使えるようになったのですが
abc.cppにはどうして定義できないのでそうか?
よろしくお願いいたします。
VC++ clr で 静的フィールドに定義したい
Re: VC++ clr で 静的フィールドに定義したい
私はC++を VC++ CLRで勉強したのですが 言っていることが把握できません。(^^;
もっと他人に分かるようによく考えてみましょう。
まずいまつくった *.h *.cpp の全文を提示しみてください。
もっと他人に分かるようによく考えてみましょう。
まずいまつくった *.h *.cpp の全文を提示しみてください。
Re: VC++ clr で 静的フィールドに定義したい
返信ありがとうございます。
たとえば
hファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述しエラーなし
sw->Start();
が
hファイルでは正常
sw->Start();
が
cppファイルでは
それと
cppファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述し
エラー 識別子 "sw" が定義されていません。
たとえば
hファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述しエラーなし
sw->Start();
が
hファイルでは正常
sw->Start();
が
cppファイルでは
それと
cppファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述し
エラー 識別子 "sw" が定義されていません。
Re: VC++ clr で 静的フィールドに定義したい
すいません。書き直します。。。
たとえば
hファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述しエラーなし
sw->Start();
が
hファイルでは
正常
sw->Start();
が
cppファイルでは
エラー 識別子 "sw" が定義されていません。
それと
cppファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述し
エラー C3145 'sw': グローバルまたは静的変数は、マネージ 型 'System::Diagnostics::Stopwatch ^' を含むことはできません
たとえば
hファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述しエラーなし
sw->Start();
が
hファイルでは
正常
sw->Start();
が
cppファイルでは
エラー 識別子 "sw" が定義されていません。
それと
cppファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述し
エラー C3145 'sw': グローバルまたは静的変数は、マネージ 型 'System::Diagnostics::Stopwatch ^' を含むことはできません
Re: VC++ clr で 静的フィールドに定義したい
VC++ ではForm の主要部分は *.h に書くことが推奨されていることはご存知ですよね。(実際おおくのサンプルがそうなっているはず)
*.h と *.cpp の全文を2種類提示してもらえばすぐわかるはずですよ。
*.h と *.cpp の全文を2種類提示してもらえばすぐわかるはずですよ。