とくにあぶなくないRiSKのブログ

危ないRiSKのブログだったかもしれない。本当はRiSKだけどググラビリティとか取得できるIDの都合でsscriskも使ったり。

Boost C++ Libraries 1.55.0 がでました

Boost 1.55 が出ました! Version 1.55.0 古いコンパイラのサポートが切れています。Visual C++であれば、7.1以降がサポートされます。 また、新しいライブラリとしてPredefが入りました。 boostjpにて、有志がリリースノートの翻訳も行いました。こちらも参…

【BGM素材】Steel Rooks【島白】

島白(よだれP)さんの新曲。熱いロック。いつも通りかっこいいです! Steel Rooks - ニコニ・コモンズ MP3のダウンロード Steel Rooks

風邪をひいた

昨日、熱が39.2℃まで上がった。電気毛布の温度を最高にしても寒気がひどくて苦しかった。今日、病院行って薬もらってきた。今日の熱は37℃台。昨日よりはだいぶ楽。インフルエンザではないみたい(何も言われなかったからことから判断)なので、それはよかった。

Windows 8.1にアップグレードするとavast!が削除される

昨日、avast!が起動していないことに気が付き、このことについて調べてみたところWindows 8.1にアップグレードするとavast!が削除されるそうです。 Windows 8.1 と avast | rijiの日記 | スラッシュドット・ジャパン アップグレードする前に「アップグレード…

BIOSの設定を変えた

私の使っているPCは休止状態から勝手に復帰することがある。 症状 PCの電源を切る時はシャットダウンではなく休止状態(C:\Windows\System32\shutdown.exe /h)を使う。 ごくたまに、勝手に復帰しPCの電源が入る(あるいはすでに入っている)。 昨日は早朝4時頃…

GCC 4.8.2が出ました!

GCC, the GNU Compiler Collection - GNU Project - Free Software Foundation (FSF) GCC 4.8.2 released [2013-10-16] GCC 4.8 Release Series - GNU Project - Free Software Foundation (FSF) 4.8.1から以下のバグが修正されています。私が報告したICEに…

ドラフトが更新されました

isocpp.org にて、open-std.org に先立ち N3797 が公開されました。 N3797 Working Draft, Standard for Programming Language C++ 正式な規格ではないので注意が必要ですが、最新の情報を得るには必須ですね。

boost::overloaded_functionを使ったオーバーロードって素晴らしいですよね!

オーバーロードって素晴らしいですよね! - ぐるぐる~ このエントリでは、C#において オーバーロードがいらないは完全に言い過ぎですけど、オーバーロードを入れてしまったがために(後から導入した)関数との統一性がなくなってしまっています。 ということ…

Google Adsenseのバグ

Bug

広告が表示されず、GIF89aというテキストだけが表示されている(下の画像参照)。

Boost 1.55.0 リリースノートにSmartPtrを追加

boostjpにて、Boost 1.55.0 リリースノートの翻訳が進んでいます。 原文 https://svn.boost.org/svn/boost/website/public_html/live/feed/history/boost_1_55_0.qbk Version 1.55.0 - work in progress 作業 少しでも協力できればと、「テスト済みコンパイ…

Template Meta Programming入門から応用まで

C++

C++勉強会 @ tkb #2 で発表された以下のスライドの内容が非常に濃いものでした。 Template Meta Programming入門から応用まで - ここは匣 知ったこと 113ページ。template<>を付けられるのを知らなかった。今まで普通の関数でオーバーロードしていた。 templ…

C++勉強会 @ tkb #2 が開催されていた

C++

C++勉強会 @ tkb #2 - PARTAKE id:fimbul さんが主宰したようです。 C++勉強会 @ tkb #2 を主宰しました - ここは匣 発表内容(発表順序不明) Template Meta Programming入門から応用まで 発表者:蔵人紗音のじ (fimbul11) Template Meta Programming入門から…

ひなた先生が教えるデバッグが256倍速くなるテクニック

最近読んだ本。 ひなた先生が教えるデバッグが256倍速くなるテクニック (Software Design Books) 速くデバッグするにはソースコードを二分探索をする。 スタックのプッシュとポップに見られるように、実装では対称性に注目する。対称性が崩れているならば、…

Restricted Words

C++

CodeIQのRestricted Wordsという問題に挑戦しました。 挑戦者求む!【言語指定】Restricted Words by @cielavenir cielavenir│CodeIQ 標準出力に Hello World と出力するプログラムを作成して下さい。 ただし、数値、文字及び文字列リテラルを解答に含めるこ…

【ロイヤリティフリーBGM】ぶらぶらりん / 至る選択

紹介が遅れました。島白さん(よだれP)の曲です。 「ぶらぶらりん」と「至る選択」の二曲です。 「ぶらぶらりん」は民族系でのどかな感じ。「至る選択」は機械的な雰囲気と緊張感がある曲。 【ロイヤリティフリーBGM】ぶらぶらりん / 至る選択 - ニコニコ動画…

最近読んだ本

本というより雑誌です。 日経ソフトウエア 2013年 10月号 日ソフを超久しぶりに買いました。何とかお金を稼げないかと考えていたので、アイディア元として。¥1,000以上するのは大きな出費でした。

C++ ポケットリファレンス

最近読んだ本。いや、最近じゃないけど最近ってことにします。 C++ ポケットリファレンス 普通のC++erは持ってる本。私も普通のC++erになりたかったので4/30に予約してすぐに手に入れました。 内容は最新の情報も含めとても良いものになっています。すべてサ…

literal type

C++

リテラル型(literal type)とは。 規格 C++11 N3337(PDF) 3.9/10 A type is a literal type if it is: — a scalar type; or — a reference type referring to a literal type; or — an array of literal type; or — a class type (Clause 9) that has all of …

std::is_podのバグ

C++

Visual Studio 2012(Visual C++ 11.0)のstd::is_podはバグっている。 再現コード 以下のstatic_assertに失敗してしまう。 (1) void型をPOD型と判定してしまう。 (2) アクセス制御でprotectedあるいはprivateのデータメンバがあるクラスをPOD型ではないと判定…

POD class

C++

PODクラス(POD class)とは。 規格 N3337(PDF) 9/10 A POD struct 109 is a non-union class that is both a trivial class and a standard-layout class, and has no non-static data members of type non-POD struct, non-POD union (or array of such type…

std::is_standard_layoutのバグ

Visual Studio 2012(Visual C++ 11.0)のstd::is_standard_layoutはバグっている。 再現コード 以下の二つのstatic_assertに失敗してしまう。参照型を標準レイアウト型とみなしてしまっている。 #include<type_traits> static_assert(std::is_standard_layout<int&>::value == fa</int&></type_traits>…

standard-layout class

C++

標準レイアウトクラス(standard-layout class)とは。 規格 N3337(PDF) 9/7,8 A standard-layout class is a class that: — has no non-static data members of type non-standard-layout class (or array of such types) or reference, — has no virtual fun…

std::is_trivially_copyableのバグ

Visual Studio 2012(Visual C++ 11.0)のstd::is_trivially_copyableはバグっている。 再現コード 以下の三つのstatic_assertに失敗してしまう。参照型を自明なコピー可能型とみなしてしまっている。さらに、void型を自明なコピー可能型とみなしてしまってい…

std::is_trivialのバグ

Visual Studio 2012(Visual C++ 11.0)のstd::is_trivialはバグっている。 再現コード 以下の二つのstatic_assertで失敗してしまう。参照型を自明型とみなしてしまっている。 #include<type_traits> static_assert(std::is_trivial<int&>::value == false, ""); static_assert(st</int&></type_traits>…

std::is_scalarのバグ

Visual Studio 2012(Visual C++ 11.0)のstd::is_scalarはバグっている。 再現コード #include<type_traits> #include<cstddef> static_assert(std::is_scalar<std::nullptr_t>::value, ""); int main(){} std::nullptr_tはスカラ型(scalar types)なので、static_assertに成功すべきだが失敗してしま</std::nullptr_t></cstddef></type_traits>…

配列型とcv修飾

C++

配列型をcv修飾した場合、その要素型がcv修飾される。 また、要素がcv修飾されている配列型はcv修飾型になる。 この挙動は他の複合型(ポインタ型や参照型など)とは異なるので注意。 コード例 typedef int A[1]; const A a; 要素がcv修飾され、aはconst int […

Visual C++ 2012はメンバ関数のcv修飾でバグがある

Visual Studio 2012(Visual C++ 11.0)はメンバ関数のcv修飾にバグがある。 再現コード 以下のコードをコンパイルするとコンパイルエラーになる。 template<class T> struct s{}; typedef int f() const; s<f> ok; // OK s<int() const> bug; // Compile error, why? int main(){} erro</int()></f></class>…

Visual C++ 2012のis_fundamentalはバグっている

Visual Studio 2012(Visual C++ 11.0)のstd::is_fundamentalはバグっている。 再現コード 以下のコードをコンパイルするとstatic_assertに失敗する。 #include<type_traits> #include<cstddef> static_assert(std::is_fundamental<std::nullptr_t>::value, ""); int main(){} 規格 規格を見るとN333</std::nullptr_t></cstddef></type_traits>…

Clang/libc++のC++1y(C++14)対応状況

Clang/libc++のC++1y(C++14)対応状況が公開されました。分かりやすくてとてもいいですね。 libc++ C++1Y Status

GCCのバグが修正された

GCCでICE - とくにあぶなくないRiSKのブログで紹介した、gcc 4.8.0, 4.8.1, 4.9.0(20130724)でICEになるバグが早くも修正されました。 4.8.2と、4.9.0の次のビルドでは修正されているはずです。 Bug 57981 – [4.8/4.9 Regression] ICE in this code