Visual C++ 2005 で下のようなクラスを作ったんですが、Key_input()で i に代入、読み込みの操作を加えようとエラーが出ます。
変数の使い方を間違ってるのでしょうか?C++のクラスの使い方を見ながらやったつもりなのですが……

---------- Button_sousa.cpp ----------
#include "StdAfx.h"
#include "Button_sousa.h"

Button_sousa::Button_sousa(void){}
void Button_sousa::Key_input( KeyEventArgs^ e )
{
// 入力されたキーに対する操作を呼び出す
switch( e->KeyCode ){
case Keys::A:
MessageBox::Show( "push A" );
break;
default:
MessageBox::Show( i.ToString() ); // ここでエラーがでる
break;
}
}

---------- Button_sousa.h ----------
#pragma once
using namespace System::Windows::Forms;
ref class Button_sousa
{
public:
Button_sousa(void);
void Key_input( KeyEventArgs^ kc );
private:
int i;
};