組込み現場の「C++」プログラミング 明日から使える徹底入門

高木 信尚(株式会社クローバーフィールド

組込み現場の「C++」プログラミング 明日から使える徹底入門

目次

はじめに

第1章 明日からでも使えるC++

読者の中には,すでに業務でC++を使っている方も,まだ使ったことがない方もいらっしゃることと思います.本章では,C++というものがどんな言語なのかをざっとご紹介します.C++の入門書では取り上げないような機能についても一通りご紹介します.あまり詳しい解説ではありませんが,Cを使いこなせる技術者であれば,この章を読んだだけでも,C++をある程度使えるようになるでしょう.

第2章 クラスを使いこなそう

前章では,Cの延長としての使い方に限定して,すぐにでも使える内容を解説しました.本章では,C++の最大の特徴である「クラス」について詳しく解説します.前章と本章の内容を理解できれば,C++の言語仕様についてひととおり把握したことになります.よくC++の仕様は膨大だといわれますが,その大部分はライブラリに関する仕様です.組込み開発の場合,C++の標準ライブラリのうち,実際に使用できるものは限られるので,基本的な言語仕様さえ把握できれば,C++を使いこなすための材料が揃ったと考えてもよいでしょう.

第3章 C++プログラムの裏側

第1章と第2章では,C++の使い方に重点をおいて解説を行ってきました.しかし,実際の開発現場では,C++で書いたソースコードがどのようにコンパイルされ,どのように振る舞うのかを理解していなければならないことも少なくありません.何か不具合が起きたときの解析はもちろん,発生しうる不具合を事前に予測するうえでも,また,効率のよいプログラムを書くうえでも,そうした知識は不可欠です.

この章では,C++の主な機能がどのように実現され,どのように振る舞うのかについて,かなり突っ込んだところまで解説します.とはいえ,各機能の具体的な実現方法は処理系によって異なります.そのすべてを網羅することはできませんが,本書で紹介する例を理解しておけば,実際に使用する処理系について理解するうえでも必ず役に立つものと考えています

第4章 C++プログラムの移植性

残念なことに,少なくとも現時点では,C++の移植性はCほどは高くありません.多種多様なプロセッサを対象とする組込み開発においては,特にそのことが問題になるかもしれません.ここでは,さまざまな角度から,移植性を向上させるために留意すべき事柄を説明します.

第5章 C++実用テクニック

この章では,締めくくりとして,組込み開発にC++を導入した際に役立つと思われる実用テクニックを紹介することにします.参考にしていただき,ぜひ“現場”でC++を役立ててください.