次スレを立てる時は本文の1行目に以下を追加して下さい。
!extend:on:vvvvv:1000:512
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。
前スレ
C++相談室 part137
http://mevius.5ch.net/test/read.cgi/tech/1531558382/
このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.103【環境依存OK】
http://mevius.5ch.net/test/read.cgi/tech/1530384293/
■長いソースを貼るときはここへ。■
http://codepad.org/
https://ideone.com/
[C++ FAQ]
https://isocpp.org/wiki/faq/
http://www.bohyoh.com/CandCPP/FAQ/ (日本語)
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
探検
C++相談室 part138
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん (スフッ Sd9f-fGne)
2018/08/05(日) 18:02:36.57ID:DigzqJtZd981はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 063e-UAPS)
2021/01/03(日) 14:19:53.78ID:/m8P2Sw00 >>978
いや、標準が提供するのは std::type_traits のような副作用のない判定用メタ関数だけではない。
例でたまに出てくるのは std::swap を効率化するというような話とか。
ムーブで効率的に入れ替えてはくれるけど、
クラスの特性によっては入れ替えのときに限ってもっと効率的にやれるかもしれない。
入れ替えるという結果が同じなら仕様に反しないし、
効率的にやれるなら特殊化する価値はある。
調べてもやり方の例としては出てくるものの具体的に効率的になる例は見つからんかったんだが。
実用的な例としてはアロケータの特殊化。
今では std::allocator ではなく std::allocator_traits を特殊化する形が推奨されているけど、
いずれにしても特殊化でやる前提で用意されている機能。
いや、標準が提供するのは std::type_traits のような副作用のない判定用メタ関数だけではない。
例でたまに出てくるのは std::swap を効率化するというような話とか。
ムーブで効率的に入れ替えてはくれるけど、
クラスの特性によっては入れ替えのときに限ってもっと効率的にやれるかもしれない。
入れ替えるという結果が同じなら仕様に反しないし、
効率的にやれるなら特殊化する価値はある。
調べてもやり方の例としては出てくるものの具体的に効率的になる例は見つからんかったんだが。
実用的な例としてはアロケータの特殊化。
今では std::allocator ではなく std::allocator_traits を特殊化する形が推奨されているけど、
いずれにしても特殊化でやる前提で用意されている機能。
982デフォルトの名無しさん (ワッチョイ 6f1f-mBT+)
2021/02/23(火) 10:31:30.19ID:anF8SsN/0 void somefunc(const int& a){...}
こんな感じの関数に
somefunc(0);だとうまく行かないが
const int hoge = 0;
somefunc(hoge);ならうまくいくんだが
somefunc(0)でエラーも警告も出ないのは仕様?
こんな感じの関数に
somefunc(0);だとうまく行かないが
const int hoge = 0;
somefunc(hoge);ならうまくいくんだが
somefunc(0)でエラーも警告も出ないのは仕様?
983デフォルトの名無しさん (ワッチョイ 6fe9-W5tZ)
2021/02/23(火) 10:33:48.47ID:IoYWawP80 はい。
それで「うまく行かない」ってどういう状況なんでしょうね?
それで「うまく行かない」ってどういう状況なんでしょうね?
984デフォルトの名無しさん (ワッチョイ 6f1f-mBT+)
2021/02/23(火) 10:35:20.19ID:anF8SsN/0 関数入った瞬間に0インスタンスが消えるかして
関数の中で変な値になっとる
(最適化Os)
関数の中で変な値になっとる
(最適化Os)
985デフォルトの名無しさん (ワッチョイ 6f1f-mBT+)
2021/02/23(火) 10:37:41.60ID:anF8SsN/0 上の表現は正確じゃないな
class A{const int& hoge;public: A(const int& hoge):hoge(hoge){} void somefunc(){...} };
A a(0); a.somefunc(); // なんか変な値になってる
const int hoge = 0; A a(hoge); a.somefunc(); // 正しい挙動になる
class A{const int& hoge;public: A(const int& hoge):hoge(hoge){} void somefunc(){...} };
A a(0); a.somefunc(); // なんか変な値になってる
const int hoge = 0; A a(hoge); a.somefunc(); // 正しい挙動になる
986デフォルトの名無しさん (ワッチョイ 6fe9-W5tZ)
2021/02/23(火) 10:37:55.22ID:IoYWawP80 最適化されたコードをデバッガで見て変な値が見えるという話なら、そんなこともあるだろうとしか。
987デフォルトの名無しさん (ワッチョイ 6fe9-W5tZ)
2021/02/23(火) 10:41:26.23ID:IoYWawP80 >>985
それは仕様どおり。 A a(0) に渡された const int& の指すオブジェクトは一時オブジェクトで、寿命は ; まで。
それは仕様どおり。 A a(0) に渡された const int& の指すオブジェクトは一時オブジェクトで、寿命は ; まで。
988デフォルトの名無しさん (ワッチョイ 6f1f-mBT+)
2021/02/23(火) 10:44:06.65ID:anF8SsN/0989デフォルトの名無しさん (ワッチョイ 6f1f-mBT+)
2021/02/23(火) 10:47:45.54ID:anF8SsN/0 いや、参照で保持するのをやめればいいだけの話だった
すっきりした、ありがとうございます
すっきりした、ありがとうございます
990デフォルトの名無しさん (スッップ Sd33-55sF)
2021/03/24(水) 07:43:19.28ID:PNXF+EC1d991デフォルトの名無しさん (ワッチョイ 13ad-zgiT)
2021/03/24(水) 13:35:18.40ID:uPqg/PBu0 寿命つまりスコープを制御したいなら、{}で囲めばok
992デフォルトの名無しさん (ワッチョイ cb45-9/J3)
2021/05/08(土) 09:21:32.08ID:St3wXYGV0 固定小数点を作ろうとしててさ
struct fix
{
int minor, major;
friend auto operator <=> (const fix& lhs, const fix& rhs) = default;
};
int main()
{
fix a{1, 2};
fix b{2, 1};
cout << boolalpha;
cout << (a < b) << endl; //true
cout << (a > b) << endl; //false
}
俺はまだ大小関係を定義してないのに勝手に何かぬかしてるようなんだけど
= default; が邪魔で定義できない
どうすればいい?
struct fix
{
int minor, major;
friend auto operator <=> (const fix& lhs, const fix& rhs) = default;
};
int main()
{
fix a{1, 2};
fix b{2, 1};
cout << boolalpha;
cout << (a < b) << endl; //true
cout << (a > b) << endl; //false
}
俺はまだ大小関係を定義してないのに勝手に何かぬかしてるようなんだけど
= default; が邪魔で定義できない
どうすればいい?
993デフォルトの名無しさん (ワッチョイ 437b-HsZ9)
2021/05/08(土) 21:31:17.88ID:9lKegb3f0 >>992
> 固定小数点を作ろうとしてて
この時点で既におかしい
後は向こうでどうぞ
C++相談室 part155
https://mevius.5ch.net/test/read.cgi/tech/1616555235/
> 固定小数点を作ろうとしてて
この時点で既におかしい
後は向こうでどうぞ
C++相談室 part155
https://mevius.5ch.net/test/read.cgi/tech/1616555235/
994デフォルトの名無しさん (ワッチョイ cb45-9/J3)
2021/05/08(土) 21:43:34.99ID:St3wXYGV0995デフォルトの名無しさん (ワッチョイ bb4f-DjaX)
2021/05/08(土) 22:16:16.65ID:L+qXSIbq0 >>992
= defaultって書いたからその通り動作しているだけだと思うが?言ってることが支離滅裂。
= defaultって書いたからその通り動作しているだけだと思うが?言ってることが支離滅裂。
996デフォルトの名無しさん (ワッチョイ cb45-9/J3)
2021/05/08(土) 22:34:51.84ID:St3wXYGV0 >>995
その通りとは?
その通りとは?
997デフォルトの名無しさん (ワッチョイ 2fe5-derf)
2021/05/09(日) 04:24:19.93ID:sKwNJeAm0998デフォルトの名無しさん (ブーイモ MMd6-HO9V)
2021/05/09(日) 22:17:31.30ID:pcL7xDKPM >>996
こいつ日本語も不自由?哀れ
こいつ日本語も不自由?哀れ
999デフォルトの名無しさん (ワッチョイ cb45-9/J3)
2021/05/10(月) 06:11:01.47ID:CKsNew1t0 = default; が邪魔って言ってんのに意味わかってねーやつの戯言
1000デフォルトの名無しさん (ワッチョイ 2301-dxvU)
2021/05/10(月) 06:47:02.10ID:XulgkjOp0 あわしろ氏が>>1000!
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 1008日 12時間 44分 26秒
新しいスレッドを立ててください。
life time: 1008日 12時間 44分 26秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 自民・麻生太郎副総裁 石破政権の1年は「どよーん」 高市政権発足で「何となく明るくなった」「世の中のことが決まり動いている」★2 [Hitzeschleier★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- 【山形】クマ駆除で誤射した猟友会隊員に町が1663万円請求へ...弾当たり男性大けが2023年 小国町 [nita★]
- 【27歳会社員】「自慰行為に使うために」コインランドリーの乾燥機から24歳女性の下着など計11点(時価8万2080円相当)盗んだ疑い [nita★]
