0

別の cpp ファイルから値を取得したい

たとえば、これは fileone.cpp にあります。

for (int i = 0; i < NSIZE(facerects); i++)
    {

        DetPar detpar;

        detpar.x = facerect->x + facerect->width / 2.;
        *gX=facerect->x;
        detpar.y = facerect->y + facerect->height / 2.;
        *gY=facerect->y;

    }

file2.cpp の *gX 、 *gY の値を取得したい

Java では getters= でそれを行うことができますが、C++ でそれを行う簡単な方法は何ですか?

4

2 に答える 2

1

グローバル変数が別のファイルで定義されている場合は、extern. たとえば、file2.cpp で次のように宣言された変数があるとします。

int *gX; // a pointer to an integer
int *gY;

次に、main.cpp で次を使用して変数を使用できますextern

// define these near the top of your cpp file and then use them wherever you need to
extern int *gX; // a pointer to an integer defined elsewhere in your program
extern int *gY;

ただし、ソースコードで使用する方法でそれらを使用する場合は、少なくとも有効なメモリを指すように注意してください。int(ポインターではなく)単純に使用する方がよいでしょう。

また、グローバル変数を使用することの影響を考慮する価値があります。C/C++ でのグローバル変数についての議論です。

于 2013-06-07T02:03:21.370 に答える