hファイルでもcppファイルでも
Stopwatchを使えるようにしたいです。
以下コードです。
//-------------------------------------------------------------
//MyForm.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;//←ここを追加
//以下略
#pragma endregion//この直下に定義
Stopwatch^sw = gcnew Stopwatch();//ここに記述
//このグローバル変数は異常なし
private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) {
sw->Start();
//ここも異常なし
}
//以下略
//-------------------------------------------------------------
//MyForm.cpp
//-------------------------------------------------------------
#include "MyForm.h"
using namespace hoge;
[STAThreadAttribute]
int main(array<System::String ^> ^args) {
//MyForm ^fm = gcnew MyForm();
//fm->ShowDialog();
Application::EnableVisualStyles();
Application::SetCompatibleTextRenderingDefault(false);
Application::Run(gcnew MyForm());
return 0;
}
void abc() {
sw->Start();
//エラー 識別子 "sw" が定義されていません。
}
Stopwatch^sw = gcnew Stopwatch();
を記述しエラーなし
sw->Start();
が
hファイルでは
正常
cppファイルでは
エラー 識別子 "sw" が定義されていません。
それと
cppファイルに
Stopwatch^sw = gcnew Stopwatch();
を記述し
エラー C3145 'sw': グローバルまたは静的変数は、マネージ 型 'System::Diagnostics::Stopwatch ^' を含むことはできません