uchan note

プログラミングや電子工作の話題を書きます

C++ autoの使いどころ・使わない方が良い場面

この記事では C++11 から導入された型推論 auto の使いどころ,使うべきでない場面を紹介します. 可読性や保守性の高いプログラムにするために記事が役立てば幸いです. (筆者の考え方が偏っているかもしれません.是非,ご意見ご感想をお寄せください)

結論をまとめると次の通りです.

  • auto を使った方が良いのは
    • 右辺の式から型がはっきりわかる
    • 具体的な型があまり重要ではない
    • ラムダ式を受け取る
  • auto を使うべきでないのは
    • その場所でその型になっていることを保証する
    • 親クラスの参照として受け取る
    • その変数を後でオーバーロードされた関数に渡す
続きを読む

uchanの自作OS的な自分史

筆者(uchan)は現在,自作OSの分野で精力的に活動しています.そんな筆者も最初から知識が有ったわけではありません.当然ですが最初は初心者でした.このエッセイは,筆者の自作OS人生を振り返り,何のきっかけで自作OSに足を踏み入れ,どうやって成長したかを語るものです.

続きを読む

ClangdでC++ソースコードを補完する際にコンパイルオプションを指定する方法

この記事では Clangd を使って C++ソースコードを補完する際に独自のコンパイルオプションを指定する方法を説明します.

続きを読む

そこのあなた!OSCに出展してみない?

皆さんはOSC(オープンソースカンファレンス)はご存知ですか?一言で言えば「オープンソースの文化祭」的イベントで、OSSを開発、利用、販売しているような企業やコミュニティが集まってブース展示やセミナーを開催します。

私は参加自体は以前からしていましたが、2018年の秋に初めて自分のブースを展示しました。それがとても楽しかったので、その経験をお伝えすべく OSCアドベントカレンダー の2日目として記事を書いています。

f:id:uchan_nos:20181029195220j:plain
私のブースの様子

続きを読む

QEMUのトレース機能でOSのデバッグを支援する

この記事では QEMU が持つ「トレース」および DPRINTF マクロの機能を有効化して OS 開発のデバッグに役立てる方法を説明します. 自作 OS アドベントカレンダー 2018 の 1 日目の記事です.

OS,特にハードウェアを制御するドライバの開発はなかなか苦労することが多いと思います. 正しく書いているはずなのになぜかうまく動かない,という経験は誰しもあるのではないでしょうか? QEMU に備わる機能を使って,ドライバ開発を効率的に行いましょう.

続きを読む

讃岐うどんの楽しみ方

uchanは讃岐うどんが好きでたまに香川に行きます.うどんマニアのように食べ尽くしたというわけではありませんが,香川には5回ぐらい行っており,割と色々なうどん屋さんに行きました.讃岐うどん未経験の方が讃岐うどんを楽しめるよう,メモを書くことにしました.

f:id:uchan_nos:20181125202839j:plain

続きを読む