list

[C++] list::pop_back()の使い方 – 末尾要素を削除する

C++のstd::listクラスのメンバ関数pop_back()は、リストの末尾要素を削除するために使用されます。 この関数は引数を取らず、戻り値もありません。 リストが空の場合に呼び出すと未定義動作となるため、事前にempty()でリスト

続きを読む »
数値型

[C++] long型の使い方をわかりやすく解説

C++のlong型は、整数を格納するためのデータ型で、通常のint型よりも広い範囲の値を扱えます。 サイズは環境に依存しますが、多くの環境で64ビットまたは32ビットです。 宣言はlongまたはlong intと記述します。 符号付きで使用

続きを読む »
繰り返し処理

[C++] for文で配列を繰り返し処理する方法をわかりやすく解説

C++で配列を繰り返し処理するには、for文を使用します。 配列の要素数を指定して、インデックスを使って各要素にアクセスします。 例えば、int arr[5] = {1, 2, 3, 4, 5};という配列がある場合、for (int i

続きを読む »
繰り返し処理

[C++] for文の書き方を初心者向けに解説

C++のfor文は、特定の回数だけ繰り返し処理を行うための構文です。 基本的な書き方は以下の通りです:for (初期化; 条件; 更新)。 初期化で変数を設定し、条件が真の間ループが実行され、各ループ後に更新が行われます。 例えば、for

続きを読む »
繰り返し処理

[C++] for文のループ処理を高速化する方法を解説

C++でfor文のループ処理を高速化するには、いくつかの方法があります。 ループの範囲を最適化するために、ループ変数の型を適切に選び、可能であればintよりもsize_tを使用します。 条件式やインクリメント部分を簡潔にし、不要な計算を避け

続きを読む »
list

[C++] list::clear()の使い方 – 要素を全て削除する

C++のstd::listクラスのclear()メンバ関数は、リスト内の全ての要素を削除し、リストを空にします。 この操作により、リストのサイズは0になりますが、リスト自体のメモリは解放されません。 clear()は例外を投げない保証があり

続きを読む »
アルゴリズム

[C++] lexicographical_compare()の使い方 – 辞書式順序の比較

C++のstd::lexicographical_compare()は、2つの範囲を辞書式順序で比較するための関数です。 辞書式順序とは、文字列や配列を辞書の単語のように並べる順序を指します。 この関数は、最初の範囲が2番目の範囲よりも「小

続きを読む »
アルゴリズム

[C++] is_sorted()の使い方 – ソート済みか判定する

C++のis_sorted()は、指定した範囲が昇順または降順にソートされているかを判定する関数です。 #include <algorithm>をインクルードすることで使用可能です。 基本的な使い方はstd::is_sorted

続きを読む »
アルゴリズム

[C++] is_permutation()の使い方 – 順序を無視した集合一致判定

C++のstd::is_permutation()は、2つの範囲が順序を無視して同じ要素を持つかを判定する関数です。 アルゴリズムヘッダをインクルードして使用します。 引数として2つの範囲(イテレータ)を指定し、要素の順序に関係なく一致して

続きを読む »
アルゴリズム

[C++] inplace_merge()の使い方 – ソート済みコンテナの結合

C++のstd::inplace_merge()は、ソート済みの2つの範囲を1つに統合し、結果をソート済みの状態に保つアルゴリズムです。 使用するには、統合対象の範囲全体、2つの範囲の境界を示すイテレータ、および比較関数(省略可能)を指定し

続きを読む »
アルゴリズム

[C++] includes()の使い方 – 範囲チェック処理

C++20で導入されたstd::ranges::includesは、2つのソート済み範囲を比較し、1つ目の範囲が2つ目の範囲を完全に含むかを判定します。 引数として2つの範囲(イテレータまたはコンテナ)を渡し、オプションでカスタム比較関数を

続きを読む »
数値型

[C++] int型の最大値・最小値はいくつ?取得する方法も解説

C++でのint型の最大値は\(2,147,483,647\)、最小値は\(-2,147,483,648\)です。 これらは32ビットの符号付き整数として定義されています。 最大値と最小値を取得するには、<climits>ヘッダ

続きを読む »
数値型

[C++] int型の最大桁数はいくつ?log10で求める方法も解説

C++におけるint型の最大桁数は、環境依存ですが、通常32ビット環境では最大値が\(2,147,483,647\)であるため、10桁です。 桁数を求めるには、最大値を用いて\(\lfloor \log_{10}(最大値) \rfloor

続きを読む »
list

[C++] list::insert()の使い方 – 指定位置に要素を追加する

C++のstd::listクラスのinsert()メソッドは、指定した位置に要素を挿入するために使用されます。 このメソッドは、イテレータを使って挿入位置を指定します。 基本的な構文はlist.insert(position, value)

続きを読む »
ファイル

[C++] jsonファイルから読み込んでデシリアライズする方法

C++でJSONファイルを読み込みデシリアライズするには、外部ライブラリを使用するのが一般的です。 代表的なライブラリとして nlohmann/json や RapidJSON があります。 これらを利用すると、JSONファイルをパースして

続きを読む »
list

[C++] list::front()の使い方 – 先頭要素への参照の取得

list::front()は、C++のSTL(標準テンプレートライブラリ)において、std::listコンテナの先頭要素への参照を取得するためのメンバ関数です。 この関数は、リストが空でない場合に使用する必要があります。 戻り値は先頭要素へ

続きを読む »
ファイル

[C++] json形式でファイルに書き込みする方法

C++でJSON形式のデータをファイルに書き込むには、JSON操作ライブラリを使用するのが一般的です。 代表的なライブラリとして nlohmann/json や RapidJSON があります。 これらを使うと、C++のオブジェクトやデータ

続きを読む »
list

[C++] list::erase()の使い方 – 指定要素の削除

C++のstd::listクラスのerase()メソッドは、リストから指定した要素を削除するために使用されます。 引数としてイテレータを受け取り、削除した要素の次の要素を指すイテレータを返します。 範囲を指定して削除する場合は、開始イテレー

続きを読む »
ファイル

[C++] 構造体をjsonフォーマットの文字列に変換する方法

C++で構造体をJSONフォーマットの文字列に変換するには、外部ライブラリを使用するのが一般的です。 代表的なライブラリとして nlohmann/json や RapidJSON があります。 これらを利用すると、構造体をJSON形式にシリ

続きを読む »
Back to top button