59 search resultsShowing 1~20 results

Stocked
rinse_

@rinse_

C++演算子オーバーロード大全

はじめに この記事ではC++の演算子のオーバーロードを使い慣れていない人の為のまとめとして作成しました。 C++の演算子のオーバーロード、引数や戻り値に自由が利きすぎてどうするのがセオリーなのか...

336
319
Comment3
rinse_

@rinse_

Haskellの例外処理事情

Haskellの例外処理事情  Haskellを使うたびに例外について調べ直す癖がついているので、諸々をまとめておく。 TL;DR 部分関数を使うな。 失敗可能性はMaybe?Either?IO...

34
36
Comment0
rinse_

@rinse_

foldrでナップザックDP

ナップザック問題とは 難しい問題だが動的計画法を使うことで効率的に解けることで有名で、DPの紹介などでは定番の問題。 こちらの記事から、問題と漸化式を引用します。 典型的な DP (動的計画法)...

3
3
Comment0
rinse_

@rinse_

深さ優先探索で数独を解く

Haskellで数独ソルバーを書く よくある題材。 Haskellの深さ優先探索 Haskellではシンプルに深さ優先探索が書けるので、これを使って数独ソルバを作る。というかこれを使いたくて数独...

5
4
Comment0
rinse_

@rinse_

new/delete 演算子のオーバーロード

はじめに C++オーバーロード大全では、たくさんのストックを頂きありがとうございました。 この記事は、上の記事で解説することを避けたCreate/Destroy ObjectおよびCreate/...

41
37
Comment3
rinse_

@rinse_

C++オブジェクト指向入門的な

はじめに 本記事は、C言語を勉強してさあ次はC++をやるぞ、と意気込んだもののクラスの有難みがいまいち分からない、カプセル化を意識するのも面倒臭い、なんでメンバ関数経由でメンバ変数にアクセスしな...

35
33
Comment1
rinse_

@rinse_

std::functionからアロケータが消える

 今現在、C++1zのドラフトを読みながらC++17に備えているところなのですが、なんとn4618によるとstd::functionのコンストラクタからアロケータが削除されるようですね。これを見...

1
0
Comment0
rinse_

@rinse_

C++におけるおすすめ命名規則

はじめに 命名規則には宗教上の問題が絡みます。この記事はどの命名規則がより優れているというものではなく、あくまでもC++における予約された名前を確認して未定義動作を避け、かつC++標準ライブラリ...

169
120
Comment4
rinse_

@rinse_

std::unique_ptrには ->* 演算子がない!

タイトルの通りです。 正直誰得です。 なんと、std::unique_ptrには->*演算子が定義されておらず、メンバ関数ポインタを使ってメソッドを呼び出すにはget()関数を挟む必要があ...

2
2
Comment2
rinse_

@rinse_

C++ 演算子の代替表現

C++には演算子の代替表現というものがあります。それはすなわち、以下のようなコードが書けるという意味です。 if (n not_eq m) { std::cout << "n is ...

6
5
Comment0
rinse_

@rinse_

テンプレート関数にコンセプトを設定

テンプレート関数、使ったことがないという方はいらっしゃらないと思いますが、特定の条件に当てはまるものしか受け取ってほしくない、あるいは、特定の条件に当てはまらないものしか受け取ってほしくないとい...

9
8
Comment2
rinse_

@rinse_

ascii_traitsつくった

テンプレート関数内で文字や文字列を打ちたいときとかにつかう。どの文字コードも大体0~127はasciiに準じているのでこの範囲では汎用性は狭くないはず。 文字列の扱いももう少しうまいやり方があり...

0
0
Comment0
rinse_

@rinse_

Boost.Rangeってなに

Boost.Rangeが流行っている気がするので解説します。それぞれの細かい機能についてはリファレンスを見てね。この記事はBoost.Rangeが分からない人、特に全く知らない向けの記事になって...

28
21
Comment1
rinse_

@rinse_

getlineのデリミタを文字列に対応させる

標準にはありそうでなかった、getlineの第三引数がstd::stringのオーバーロードを書いたので載せるだけ。実際にはstd空間に追加しちゃだめだけど… 自分で書いてる人も多いと思うけどコ...

5
1
Comment0

59 search resultsShowing 1~20 results

Qiita is a knowledge sharing service for engineers.

  1. You can follow users and tags
  2. You can stock useful information
  3. You can make edit suggestions for articles
Functions that can be used after logging in