C ++プログラムでいくつかのクラスをテストしたいのですが、Xcodeで「予期された式」エラーが発生します。
実際にここに私が書いたコードがあります:
#include <iostream>
using namespace std;
class A {
public :
virtual void M1 () { cout << " A::M1"; }
void M2 () { cout << " A::M2"; }
virtual void M3 () { cout << " A::M3"; }
};
class B : public A {
public :
void M1 () { cout << " B::M1"; }
virtual void M2 () { cout << " B::M2"; }
void M3 () { cout << " B::M3"; }
};
class C : public B {
public :
void M1 () { cout << " C::M1"; }
void M2 () { cout << " C::M2"; }
void M3 () { cout << " C::M3"; }
};
class D {
public :
D (A v, A& r, B& s) : va (v), ra (r), rb (s) { }
void M1 () { cout << " D::M1 -->"; va.M1 (); ra.M1 (); rb.M1 (); cout << ’\n’; }
void M2 () { cout << " D::M2 -->"; va.M2 (); ra.M2 (); rb.M2 (); cout << ’\n’; }
void M3 () { cout << " D::M3 -->"; va.M3 (); ra.M3 (); rb.M3 (); cout << ’\n’; }
protected :
A va; A& ra; B& rb;
};
int main(int argc, const char * argv[])
{
A a; B b; C c; D d1 (a, a, b); D d2 (a, b, c); D d3 (a, c, b); D d4 (b, c, c);
cout << "avec d1 :\n"; d1.M1 (); d1.M2 (); d1.M3 ();
cout << "avec d2 :\n"; d2.M1 (); d2.M2 (); d2.M3 ();
cout << "avec d3 :\n"; d3.M1 (); d3.M2 (); d3.M3 ();
cout << "avec d4 :\n"; d4.M1 (); d4.M2 (); d4.M3 ();
return 0;
}
そのエラーがどこから来たのか本当にわかりません。
誰かアイデアがありますか?