g++
clang++
VisualC++

3つのC++コンパイラを使う

Cは成熟し、標準ライブラリのセキュリティ対策が課題かもしれない。

それに対して、C++は、まだ発展途上。3つのコンパイラを使って、

コンパイルエラー、警告を出してみて、

1 どういうプログラミングをするとよいか

2 どの関数を使うとよいか

3 どのコンパイラを使うとよいか

を検討する。

3つのC++コンパイラでコンパイルしておけば

1 可搬性

2 言語規格適合性

3 大きさと速さ

を確認できる。


Visual Studio


文字コード

Macintosh, Linuxで書いたソースをWindowsでコンパイルしようとすると文字コードのエラーがでることがある。


mac

$ brew install nkf

#!/bin/bash

for var in `ls -1 *.cpp`
do
nkf -w8 $var > ./cpp/$var
done


windows

nkf32.exe

nkfを使ってファイルの文字コードを変換する

https://dev.classmethod.jp/tool/exchange-file-encode-by-nkf/

nkfツールで文字コードを変換する(Windows編)

http://www.atmarkit.co.jp/ait/articles/1301/25/news092.html


改行、ファイルの終わり(End of File: EOF)

コンパイラによってはEOFがないと警告を出すものがある。