ssacontents
C++の「使ったら負け」シリーズ  †
初級編  †
#defineによるマクロ定義  †
言うまでもありませんが、#defineによるマクロは強力すぎて、バグの温床であり、デバッグを困難にする要因です。できるかぎり使わないに越したことはありません。
正当な理由なく#defineマクロを使ってしまったら、あなたの「負け」です。
Cスタイルのキャスト  †
ヘッダファイルでの using namespace  †
グローバル変数 (デバッグ用途以外で)  †
マジックナンバー  †
中級編  †
クラスのfriend宣言  †
クラスの前方宣言  †
void*  †
NULLなどCライブラリ由来のマクロ定数  †
union  †
#ifdef #if defined() 等による条件コンパイル  †
上級編  †
reinterpret_cast  †
ヌルポインタチェック  †
switch文  †
生delete文  †
マネージャーという名前を含むクラス名  †