【初心者歓迎】C/C++室 Ver.48【環境依存OK】at TECH【初心者歓迎】C/C++室 Ver.48【環境依存OK】 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト930:デフォルトの名無しさん 08/02/18 13:31:27 '\0'=0ってことなんですか? 931:デフォルトの名無しさん 08/02/18 13:32:53 >>928 >1, ZeroMemory( str, sizeof(str) ) 一部の環境にしか存在しないことを承知で使うのならこっちでもいいが、 そもそも文字列を初期化するのに0クリアはナンセンス。 932:デフォルトの名無しさん 08/02/18 13:33:01 2なら環境をWindows以外に変えても修正しないで済む。 933:デフォルトの名無しさん 08/02/18 13:52:19 ZeroMemoryもマクロで結局memsetになる。 934:デフォルトの名無しさん 08/02/18 14:06:59 文字列の初期化だったら、「*str = '\0';」でいいじゃない。 935:デフォルトの名無しさん 08/02/18 22:37:43 #include <new> class CBase { public: /** new */ void* operator new(std::size_t aSize) throw(std::bad_alloc); /** delete */ void operator delete(void* aMemory) throw(); /** placement new */ void* operator new(std::size_t aSize, void* aPtr) throw(); /** placement delete */ void operator delete(void* aMemory, void* aPtr) throw(); }; Effective C++にあった配置newを試そうと上のクラスを作ってみたのですが、 BCBでコンパイルすると下記のエラーが出てしまいます E2238 'CBase::operator delete(void *) throw()' の宣言が複数見つかった ボス助けて 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch