構造体のlistでの条件比較
- spaaaark・∀・
- 記事: 66
- 登録日時: 12年前
- 住所: 埼玉
- 連絡を取る:
構造体のlistでの条件比較
というクラスをリストで管理する時を考えます。
A.m_Nameが同じものを削除しようと思った時に、/*引数*/はどのように与えるといいのでしょうか?
いろんな参考サイトを回りましたが、いまいち理解できないのでこちらで質問させていただきます。よろしくお願いいたします。
いろんな参考サイトを回りましたが、いまいち理解できないのでこちらで質問させていただきます。よろしくお願いいたします。
クリエイティブな生活で刺激的な毎日を!
- spaaaark・∀・
- 記事: 66
- 登録日時: 12年前
- 住所: 埼玉
- 連絡を取る:
Re: 構造体のlistでの条件比較
引数の中で関数のような比較をするのですか?あと、この[]はlistでオーバーロードされているのでしょうか…。
僕自身見たことのない文法なので引数の中で何をしているか教えてくださると助かります…。すいません。
クリエイティブな生活で刺激的な毎日を!
- spaaaark・∀・
- 記事: 66
- 登録日時: 12年前
- 住所: 埼玉
- 連絡を取る:
Re: 構造体のlistでの条件比較
なんとなくやりたいことはわかりました。まずソートする前提条件を忘れてました。
それで、関数を条件として引数を渡すということですね。
autoキーワードは作ったときに自動的にboolに置き換えられられる・・・ということでいいですね。
このstring型のメンバ変数でソートする方法は自分で調べてみようと思います。
ただ気がかりなのは、このラムダ関数の引数でホントに隣同士の値を比較できるのでしょうか?
それで、関数を条件として引数を渡すということですね。
autoキーワードは作ったときに自動的にboolに置き換えられられる・・・ということでいいですね。
このstring型のメンバ変数でソートする方法は自分で調べてみようと思います。
ただ気がかりなのは、このラムダ関数の引数でホントに隣同士の値を比較できるのでしょうか?
クリエイティブな生活で刺激的な毎日を!
Re: 構造体のlistでの条件比較
違います。このautoは戻り値の型ではなく、ラムダ式の型を推論しています。spaaaark・∀・ さんが書きました: autoキーワードは作ったときに自動的にboolに置き換えられられる・・・ということでいいですね。
boolに置き換えるとコンパイルできません。
疑問点がよく分からないです...spaaaark・∀・ さんが書きました: ただ気がかりなのは、このラムダ関数の引数でホントに隣同士の値を比較できるのでしょうか?
- spaaaark・∀・
- 記事: 66
- 登録日時: 12年前
- 住所: 埼玉
- 連絡を取る:
Re: 構造体のlistでの条件比較
推論しているということは…実際に使うときに型を決める…という事ですか?
後半のは0,1,2,3...とあったときに、片方に0,1,2...と入ると、もう片方にほんとに
1,2,3...と比較する次の要素が参照渡しされるのか、という疑問です。
それとも何か勘違いしているのでしょうか…?
後半のは0,1,2,3...とあったときに、片方に0,1,2...と入ると、もう片方にほんとに
1,2,3...と比較する次の要素が参照渡しされるのか、という疑問です。
それとも何か勘違いしているのでしょうか…?
クリエイティブな生活で刺激的な毎日を!
- spaaaark・∀・
- 記事: 66
- 登録日時: 12年前
- 住所: 埼玉
- 連絡を取る:
Re: 構造体のlistでの条件比較
うお、なんでかよく分からないけど連番で引数が渡されてる。すごい。 http://ideone.com/Yykdmo
autoは戻り値から推測してコンパイル時に型を決める…という考えでいいのでしょうか?
autoは戻り値から推測してコンパイル時に型を決める…という考えでいいのでしょうか?
クリエイティブな生活で刺激的な毎日を!
Re: 構造体のlistでの条件比較
昨日チャットで話してたのでちょっとフォロー
[ラムダ式 C++ ]でググったら出てきました。
http://d.hatena.ne.jp/faith_and_brave/2 ... 1228989087
(const A&, constA&)を引数にとり boolを返すラムダ式の記述は以下のようです。
もし最初からこのように記述されていたらしっくりきたでしょうか? 戻り値は推論によって省略できるとあります。 省略した場合、 とコンパイラに解釈され、(a.name==b.name)の部分は比較演算の結果としてboolになります。
文から型を推定するというdecltype()というのが出てきましたが、私も初めて知りました。
知りたい場合はググってみてくださいw
細かいところ違ってたらすみません。
[ラムダ式 C++ ]でググったら出てきました。
http://d.hatena.ne.jp/faith_and_brave/2 ... 1228989087
(const A&, constA&)を引数にとり boolを返すラムダ式の記述は以下のようです。
もし最初からこのように記述されていたらしっくりきたでしょうか? 戻り値は推論によって省略できるとあります。 省略した場合、 とコンパイラに解釈され、(a.name==b.name)の部分は比較演算の結果としてboolになります。
文から型を推定するというdecltype()というのが出てきましたが、私も初めて知りました。
知りたい場合はググってみてくださいw
細かいところ違ってたらすみません。
- spaaaark・∀・
- 記事: 66
- 登録日時: 12年前
- 住所: 埼玉
- 連絡を取る:
Re: 構造体のlistでの条件比較
リンクありがとうございます!
戻り値から推測するのじゃなくて、省略されたdecltype関数の引数に戻り値と同じものがパラメータとして渡されてたんですね!
1つ目のコードと解説で理解できました!ありがとうございました><
戻り値から推測するのじゃなくて、省略されたdecltype関数の引数に戻り値と同じものがパラメータとして渡されてたんですね!
1つ目のコードと解説で理解できました!ありがとうございました><
クリエイティブな生活で刺激的な毎日を!
Re: 構造体のlistでの条件比較
decltypeは関数ではありません。
- spaaaark・∀・
- 記事: 66
- 登録日時: 12年前
- 住所: 埼玉
- 連絡を取る: