これは、C++ を使用したオブジェクト指向プログラミング クラスの課題です。このプログラムでは、ある関数で初期化された静的ポインターに別の関数からアクセスできる必要があります。具体的には、「入力」関数から「割り当て」関数で初期化されたポインタ x にアクセスできるようにしたいです。誰かが尋ねる前に、私はグローバル変数を使用することを許可されていません。
#include <iostream>
using namespace std;
void allocation()
{
static int *pointerArray[3];
static int **x = &pointerArray[0];
}
bool numberCheck(int i)
{
if(i >= 0)
{
return true;
}
else
{
return false;
}
}
void input()
{
int input1,input2;
cout << "Input two non-negative integers.\n";
cin >> input1;
while(!numberCheck(input1))
{
cout << "You typed a non-negative integer. Please try again.\n";
cin >> input1;
}
cin >> input2;
while(!numberCheck(input2))
{
cout << "You typed a non-negative integer. Please try again\n";
cin >> input2;
}
// Here I'd like to access pointer x from the allocation function
}
int main()
{
allocation();
input();
return 0;
}