C++那些事
——
光城的实验室
C++那些事 | Stories About C Plus Plus — C++ 学習サイト
简体中文
English
日本語
Español
Русский
Português
हिन्दी
検索を初期化
Light-City/CPlusPlusThings
ホーム
プロジェクト概要
ビルドと実行ガイド
基礎から応用へ
ソースコード解析
慣用法
モダン C++
ツール
パフォーマンス計測
プロジェクト実践
リーディングとテクニック
並行プログラミング
学習リソース
作者に連絡
C++那些事
実践から始める、最短で C++ を入門から上級へ。
はじめる
作者について
C++那些事
Light-City/CPlusPlusThings
ホーム
プロジェクト概要
ビルドと実行ガイド
基礎から応用へ
基礎から応用へ
C++ const 定数と修飾
C++ static メンバと生存期間
C++ vptr と vtable の仕組み
C 言語で C++ の多態を実装
C++ ポインタと参照
C++ マクロと条件付きコンパイル
C++ this ポインタ
C++ inline 関数
C++ sizeof 演算子
純粋仮想関数と抽象クラス
C++ virtual 関数
C++ volatile キーワード
C++ assert アサーション
C++ ビットフィールド
C++ extern とリンケージ
C++ struct
struct と class の違い
C++ union
C++ explicit キーワード
C++ friend
C++ using 宣言とエイリアス
C++ 名前空間
C++ enum
C++ decltype
言語機構の深掘り
言語機構の深掘り
C++ mutable キーワード
C++ const ファミリー
C++ string の ABI 互換性
C++ ref と reference_wrapper
std::function 詳解
スマートポインタを引数にする
メンバ初期化リストの注意点
複数の戻り値の書き方
C++ と Rust のデストラクタ比較
初期化と代入
restrict とコンパイラ最適化
テンプレートの曖昧性解消
C++ 尾末再帰
vector の resize と reverse
間接参照演算子 *
ソースコード解析
ソースコード解析
STL ソース解析: array
STL ソース解析: deque
STL ソース解析: queue と stack
STL ソース解析: list
STL ソース解析: vector
STL ソース解析: typename
STL traits 技法
STL ソース解析: イテレータ
STL EBO 空基底クラス最適化
STL 赤黒木の実装
STL set と multiset
STL map と multimap
STL hashtable
ハッシュテーブルを手で実装
STL ソース解析: unordered_map
std::string 深掘り
std::string 面接問題
STL イテレータ無効化
慣用法
慣用法
クラス初期化リスト慣用法
enum class スコープ付き列挙
RAII リソース管理
copy-and-swap 慣用法
Pimpl 慣用法
Mixin 慣用法
C++ 依存性注入
C++ トライグラフ
デフォルトコンストラクタを避ける
遅延評価の慣用法
Header-Only と実装分離
関数テンプレートよりクラステンプレート
ルックアップテーブル慣用法
メンバポインタと型情報
シングルトンパターン
モダン C++
モダン C++
C++11
C++11
C++11 新機能概要
std::move の原理と使い方
可変引数テンプレート
std::bind と lambda の比較
C++17
C++17
C++17 の17の高度な機能
C++17 std::string_view
C++17 構造化束縛
C++17 変数テンプレート
C++17 [[nodiscard]] 属性
C++17 PMR メモリリソース
C++17 CTAD
C++17 std::variant
C++17 optional_ref
C++17 テンプレート auto 推導
C++20
C++20
C++20 新機能ガイド
C++20 コルーチン入門
C++20 Ranges ライブラリ
C++20 モジュール
C++20 Lambda 式(前編)
C++20 channel 実践
std::span の設計と落とし穴
C++20 エンディアン
C++20 constexpr とカンマ式
C++20 [[no_unique_address]]
三方比較演算子 <=>
C++20 Concepts
C++20 [[likely]] と [[unlikely]]
ツール
ツール
CMake 入門と実践
Bazel で C++ をビルド
Meson で C++ をビルド
Conan パッケージ管理入門
GDB で C++ をデバッグ
LLDB で C++ をデバッグ
dbg-macro デバッグマクロ
Bazel と LLDB の連合デバッグ
GDB Python 拡張
メモリリーク調査実戦
STL デバッグモード
STL コンテナ簡易出力
C++ と Jupyter Notebook
C++ Insights コンパイル観察
string から int への変換
GCC コンパイルオプション詳解
VS Code で C++ を整形
AddressSanitizer
メモリリーク検出
Valgrind Massif 解析
パフォーマンス計測
パフォーマンス計測
memcpy と std::copy の比較
std::string SSO 計測
多態: 仮想関数・CRTP・variant
プロジェクト実践
プロジェクト実践
C++ 10日間集中演習
C++ 重点実戦練習
C++20 コルーチン HTTP サーバ
短縮 URL サービス Demo
gRPC ミニプロジェクト
pybind11 で Python を高速化
Google Benchmark
FnOnce を手で実装
プロセス間通信実戦
C++17 と SQLite でディレクトリ統計
Protobuf ZeroCopy シリアライズ
スタック計算機の設計
リーディングとテクニック
リーディングとテクニック
文字列分割の6つの方法
オープンソース C++ の読み方
ループなしで 1-100 を出力
面白い C++ コード
CPython 拡張開発メモ
libcurl C++ メモ
並行プログラミング
並行プログラミング
C++ Concurrency in Action 読書ガイド
マルチスレッド入門
std::thread と jthread
std::thread の内部実装
デッドロック調査
GDB マルチスレッド All-Stop
Helgrind 並行エラー検出
False Sharing とキャッシュライン
C++17 並列 STL
C++ SIMD ベクトル化
libev イベントループの原理
学習リソース
学習リソース
GeekTime『現代 C++ 実戦30講』
C++ 学習ナレッジベース
Bilibili C++ 動画チュートリアル
C++ 学習リソースと書籍リスト
作者に連絡
ホーム
最終更新:2026-10-12
コメント
ページトップへ戻る