Hatena::ブログ(Diary)

揮発性のメモ このページをアンテナに追加 Twitter

2016/09/23 (金)

コンストラクタ、デストラクタが呼ばれる順番

#include <iostream>
using namespace std;

class C {
public:
    C(){ cout << "C start" << endl; }
    virtual ~C(){ cout << "C end" << endl; }
};

class B {
public:
    B(){ cout << "B start" << endl; }
    virtual ~B(){ cout << "B end" << endl; }
};

class A {
public:
    B b;
    A(){ cout << "A start" << endl; }
    virtual ~A(){ cout << "A end" << endl; }
};

int main() {
    A a;
    C c;

    return 0;
}
B start
A start
C start
C end
A end
B end

Aはメンバー変数にBを持つ。このとき

コンストラクタはメンバー変数のほうが先に呼ばれる(コンストラクタの中で使えるし)

デストラクタはメンバー変数のほうが後で呼ばれる(デストラクタの中で使えるし)


同じ階層のメンバー変数は、コンストラクタ宣言順に、デストラクタは宣言と逆順に呼ばれる。 これは仕様で決まってる

C++の規格において、自動変数として使われたクラスのデストラク… - 人力検索はてな

Programming Place Plus C++編【言語解説】 第13章 コンストラクタとデストラクタ


C++のエッセンス ビャーネ・ストラウストラップ, Bjarne Stroustrup, 柴田 望洋

2016/09/20 (火)

logrotateできないとき

# logrotate -f /etc/logrotate.conf
error: failed to rename /var/log/hoge/oyadama.log to /var/log/hoge/oyadama.log.1: Permission denied

ログディレクトリパーミッションが無い


続きを読む

2016/09/16 (金)

jQueryのhide()はdisplay:none

$("#unit").hide();
<div style="display: none;" id="unit"> </div>

visibility: hidden ではない

2016/09/07 (水)

date() で変なエラーが出るとき

Fatal error: date(): Timezone database is corrupt - this should *never* happen! 
in /opt/hoge/test.php on line 2
<? 
echo date("Y-m-d H:i:s"); 
?>

wordpress - PHP Timezone database is corrupt error - Stack Overflow

SNS構築(OpenPNE) - Fedoraで自宅サーバー構築

キュン/M.Imamura(@kyuns)/2010年01月29日 - Twilog

タイムゾーンおかしいので、修正する


PHP設定ファイル /etc/php5/conf.d/hoge.conf編集する

date.timezone = "Asia/Tokyo"

もしくは、/etc/timezone の方を修正する


/usr/share/zoneinfo/Asia/Tokyo存在していることが前提

/usr/share/zoneinfo/Japan と同じファイルなので、無いときコピーしよう

2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2012 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2013 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2014 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2015 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2016 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |