プログラミングC++

プログラミングC++

C++で性能測定(時間測定)する方法 C++11のchronoを使う

性能測定スループットを測る、つまりある処理の時間を測るのは、プログラムを書いている限りよくあることです。製品性能が要件を満たしているかを確認するテスト項目に性能があるから社外で性能がらみの不具合発生いろいろなところで時間を測ることがあります...
プログラミング

ITエンジニアが知っておくべき不良に強いログ・トレースの出力方法

製品におけるログ・トレースは、ITエンジニア(設計者、開発者)にとって生命線です。社内のテストのときも有効ですし、社外で不良が出たときも迅速に対処するためにとても必要なことです。ログ・トレースをどうやって出力すべきかを説明します。C++で書...
プログラミングC++

ストラウストラップ著【プログラミング言語C++】第4版 C++の聖書か、辞書か、凶器か?

プログラミング言語C++プログラミング言語C++という本を紹介します。ストラウストラップが書いた名著(迷著、冥著)です。C++を愛するプログラマとしては絶対に避けては通れない本で、C++のバイブル(聖書)と呼ばれています。辞書として使ってい...
プログラミングC++

C++におけるSTLアルゴリズムとラムダ式

C++におけるラムダ式の話です。STLのアルゴリズムとからめて使うことが多いので、アルゴリズムとラムダ式をからめて説明します。STLアルゴリズムもラムダ式もプログラミングをやる上で必須の技術ではありません。しかし、使えるようになると技術の幅...
プログラミングC++

マジックナンバーを避ける方法 C++編 constとenum class

プログラミングの世界ではマジックナンバーを避けるように言われることが多いです。C++でどうやって避けるかを説明します。いくつか方法がありますが、基本的にはconstかenum classを使うのがよいと思います。マジックナンバーマジックナン...
プログラミングC++

C++のいろいろなコンテナ vector, list, deque, map,,,こんなにあるの?

C++には値の集まりを処理するためのクラス、つまりコンテナがたくさんあります。まずは、vector, listくらいを使えるようになっておくとよいです。他は存在を知っておく程度にして使うときに調べるくらいでいいと思います。C++のコンテナプ...
プログラミングC++

C++動的配列クラス std::vector入門

プログラミングでは、多くの場面で、値の集まりを作ってその操作を行います。値の集まりを扱うクラスたちをC++ではコンテナ(container)と呼んでいます。vector, list, dequeなど多数のコンテナがありますが、最もよく使われ...
プログラミングC++

新しいビルド方法 CMakeでHelloWorld

C言語が誕生したとき、ほぼ同時にmakeが生まれたようです。ビルドを自動化するための試みはmakeで終わることなく、続けられた努力は、Autotools (autoconf+automake+libtool)で完成されました。しかし、洗練さ...
プログラミングC++

HelloWorldへの道 C++編 Windows上のプログラミング環境構築

Windows上で初めてC++でHelloWorldを動作させるまでを説明します。WSLをインストールし、Makefileを作って、プログラムを書きます。HellowWorldHelloWorldとは、プログラムの入門書などで最初に書かれる...
プログラミングC++

お手軽なLinux環境 WSL Windows上のLinuxのインストールとファイル連携

ITエンジニアとして、コンパイルする環境を整えるには複数の選択肢があります。その中でも簡易なWindows上のLinuxであるWSLのインストールと簡単な使い方を説明します。WSLWSLはWindows Subsystem for Linu...