uninitialize

void uninitialize();

initializeで生成したXtal環境のうち、Currentに設定されているものを破棄します。

オブジェクトを保持しているSmartPtrが残っている場合には関数内でassertされますので、オブジェクトの寿命を狭めるか、xtal::nullを代入してください。

Example

C++

#include <xtal.h>
 
#include <xtal_lib/xtal_cstdiostream.h>
#include <xtal_lib/xtal_chcode.h>
#include <xtal_lib/xtal_errormessage.h>
#ifdef WIN32
#include <xtal_lib/xtal_winthread.h>
#include <xtal_lib/xtal_winfilesystem.h>
#else // WIN32
#include <xtal_lib/xtal_pthread.h>
#include <xtal_lib/xtal_posixfilesystem.h>
#endif // WIN32
 
int main(){
    xtal::CStdioStdStreamLib std_stream_lib;
#ifdef WIN32
    xtal::WinThreadLib thread_lib;
    xtal::WinFilesystemLib filesystem_lib;
#else // WIN32
    xtal::PThreadLib thread_lib;
    xtal::PosixFilesystemLib filesystem_lib;
#endif // WIN32
    xtal::UTF8ChCodeLib ch_code_lib;
 
    xtal::Setting setting;
    setting.std_stream_lib = &std_stream_lib;
    setting.thread_lib = &thread_lib;
    setting.filesystem_lib = &filesystem_lib;
    setting.ch_code_lib = &ch_code_lib;
 
    xtal::initialize(setting);
 
    // Xtalのオブジェクトへのアクセスが可能な状態になる
    xtal::stdout_stream()->println("Hello xtal");
 
    xtal::StringPtr str("sample text");
 
    // uninitialize前にString("sample text")をGC回収可能な状態にする
    str = xtal::null;
    xtal::uninitialize();
 
    return 0;
}

Output

Hello xtal
reference/uninitialize.txt · 最終更新: 2012/03/31 20:35 by sukai
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0