オブジェクト指向なんて今すぐやめてください
■ このスレッドは過去ログ倉庫に格納されています
0249193
2014/04/05(土) 23:41:52.81ID:UcRTpVkmやっぱり、こちらでもC++のコードを示すことにする
ただし、>>194に対して直接LAC氏がC++のコードを希望したと想定し、
>>194のRubyコードの意味を変えずC++へ移植したものとする
また、そのほうが両方のコードを比較できるから、
KAC氏以外の人達にとっても有益だと判断する
(ただし、>>213,215のKAC氏指摘バグは、最初から対策済みとする)
まず最初は、具象クラス継承のC++版コードを示す
class Rectangle {
public:
Rectangle(int h, int w): height(h), width(w)
void set_height(int h) { height = h; }
void set_width(int w) { width = w; }
virtual int area(void) { return height * width; }
virtual int perimeter(void) { return (height + width) * 2; }
private:
int height, width;
}
class Square: public Rectangle {
public:
Square(int s): Rectangle:(s, s) {}
void set_size(int s) { set_height(s); set_width(w); }
}
// 使用例
Rectangle R(3, 5);
Square(7);
(続く)
■ このスレッドは過去ログ倉庫に格納されています