0
サードパーティライブラリ内にクラスA
の宣言がありますので、変更できません。 クラスB
の宣言を使用してメソッドに渡す必要があります。は、クラスA
を変更せずに行う方法ですか?Union内のクラスへのアクセス
は、私はこれをしようとすると:
#include <iostream>
using namespace std;
class A
{
public:
union {
class B
{
public:
int x;
};
}un;
};
void foo(A::B & test)
{
}
int main() {
A::B test;
test.x=10;
cout << test.x << endl;
return 0;
}
私はエラーを取得する:
error:
B
is not a member ofA
私の仮定はB
は無名の名前空間にあるので、それが起こるということです。
PS:
union {...
へ:私はからunion
の宣言を変更することができれば
A::T::B test;
うわー!それは速かった!ありがとう、私はこれもC + + 03のために行うことができますか? – Rama