グチ言う三 川口支部

2000年11月版 その3


愚痴目次 / 掲示板 / ヘルプ / 表紙に戻る

[前日へ続く]

2000/11/22 (水)

今日は

シンクロに初参加の予定。よろしくお願いします。
でも何時頃あんな店に行けば良いの?

デストラクター

C++ で、派生クラスのインスタンスを基本クラス型のポインターで参照している場合、その基本クラス型のポインターから delete が上手くいくのか?

と、文章で書いてもわけがわからないと思うので以下のソース参照。


#include <cstdio>
using namespace std;

class Restaurant
{
public:
    Restaurant() { printf("Construct Restaurant\n"); }
    virtual ~Restaurant() { printf("Destruct Restaurant\n"); }
};

class AnnaMillers: public Restaurant
{
public:
    AnnaMillers() { printf("Construct AnnaMillers\n"); }
    virtual ~AnnaMillers() { printf("Destruct AnnaMillers\n"); }
};

class Bashamichi: public Restaurant
{
public:
    Bashamichi() { printf("Construct Bashamichi\n"); }
    virtual ~Bashamichi() { printf("Destruct Bashamichi\n"); }
};

class KobeYa: public Restaurant
{
public:
    KobeYa() { printf("Construct KobeYa\n"); }
    virtual ~KobeYa() { printf("Destruct KobeYa\n"); }
};

void main()
{
    Restaurant *rest[3];
    
    rest[0]= new AnnaMillers();
    rest[1]= new Bashamichi();
    rest[2]= new KobeYa();
    
    // hoge...
    
    for(int i= 0; i<3; i++)
    {
        // これが正しく動作するか?
        delete rest[i];
    }
}

実行結果。


Construct Restaurant
Construct AnnaMillers
Construct Restaurant
Construct Bashamichi
Construct Restaurant
Construct KobeYa
Destruct AnnaMillers
Destruct Restaurant
Destruct Bashamichi
Destruct Restaurant
Destruct KobeYa
Destruct Restaurant

ふむ。思ったとおりに動作してくれたようだ。

では試しに、基本クラス Restaurant のデストラクターから virtual を外してみるとどうなるか。つまりこう変更してみる。


class Restaurant
{
public:
    Restaurant() { printf("Construct Restaurant\n"); }
    ~Restaurant() { printf("Destruct Restaurant\n"); }
};
// その他の部分は同じ

実行結果。


Construct Restaurant
Construct AnnaMillers
Construct Restaurant
Construct Bashamichi
Construct Restaurant
Construct KobeYa
Destruct Restaurant
Destruct Restaurant
Destruct Restaurant

これはいかんですな。派生クラスのデストラクターが呼ばれていない。

というわけで、基本クラスのデストラクターは virtual にするのを忘れないようにしましょう。

しんくろ初参加

筧さんからの事前情報をもとに、20:15 くらいに渋谷のあんな店へ。
実はあんな店自体も初めてだったりする。
スペイン坂って思ったより狭い道なのね。危うく迷うところだった。

これが有名なあんな店の制服か〜。
まぁ事前に色々と情報だけは知っていたのであまりインパクトは感じなかったりするのだが。(^^;

ときんさんが昨日誕生日だったらしく、バースデーイベントが行われたり。
ときんさん、色々とおめでとうございます。
それにしても、初あんな店でバースデーイベントまで見られてしまうとは...

他にはキャラつくってないみゅうだったり、荻窪のおじさんだったり、改蔵回し読みだったり、謎原稿でガビーンだったり。

22:30 頃にあんな店を出て、みとやへ移動。もうちょっと遅い時間だったようです
きわもぽ主将の不思議な踊りを生で見ることができた。

23時を回った頃に太田さんハカマスキーさんたちと離脱。
電車が止まっていたのでしばらく待って、ようやく乗れた電車が途中でまた止まったり。(汗)
それでも何とか帰り着くことができた。なんだか妙に疲れたにょ。


2000/11/24 (金)

捕捉確認

ひかりんアンテナからの捕捉を確認しました。
どうぞよろしく。


2000/11/28 (火)

Geo側更新

トップページをリニューアル。
あと、HTML がヤバいページが残っていたのでその修正。(^^;
#昔は <NOBR> とか <WBR> なんてタグもあったねぇ...

Netscape6 の Java

ねすけ6 で Java アプレットのあるページに行くと、アプレット部分に何やらメッセージが表示されるだけで何故か起動しない。
フルインストールで JRE1.3.0_01 も入れたし、もちろん Java を有効にもしてあるのだが。

Java コンソールを見ると、こんなエラーが。


java.lang.ClassNotFoundException: java.net.ConnectException: Connection refused: no further information

う〜ん、私の環境では Java のランタイムは 1.2.2 / 1.3 / 1.3.0_01 の 3 つが共存してるから、そのせいかなぁ... (^-^;


2000/11/29 (水)

R

CD-R/RW ドライブ買った。いや、実は今まで持ってなかったもんで。

PLEXTOR の PX-W8432Ti/BS2
ATAPI のうえ BURN-PROOF 非対応というナニなドライブだけど、腐ってもプレク。
俺はシナノケンシを信じるぜっ。

新宿ソフマップで ¥14,799 だった。いまどき BURN-PROOF 非対応だと安いね。

ちょうどタイムリーなネタが。 メモメモ

箸の持ち方

箸の持ち方は普段意識していなかったので、自分がどういう持ち方をしていたか覚えていない... う〜む。

と思っていたら、何故か職場の机の中に割り箸を発見。
こんなところで役に立つとは。(^^;

持ってみた結果、「正しい持ち方」とほぼ同じだが、微妙に違うかも??


[後日へ続く]

愚痴目次 / 掲示板 / ヘルプ / 表紙に戻る

この日記は、GNS を使用して作成されています。
Written by メモル
Copyright © by Takanori YOSHIMURA