探検
C++相談室 part152
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
2020/07/12(日) 13:42:20.13ID:TX1mpKr6940デフォルトの名無しさん
2020/10/08(木) 19:50:52.17ID:2a0CIcHX 茨木が
いばらき
なのか
いばらぎ
なのか
くらいどうでもいい
いばらき
なのか
いばらぎ
なのか
くらいどうでもいい
941蟻人間 ◆T6xkBnTXz7B0
2020/10/08(木) 19:51:57.26ID:N89hoMl4 例えばstd::swapで自分のクラスの交換を定義したい、ってケースが考えられる。
942はちみつ餃子 ◆8X2XSCHEME
2020/10/08(木) 20:13:18.19ID:xCgN3gCo >>939
その std は ::std のことやで。
その std を拡張することは禁止されているが、
別の名前空間の下に std という名前空間を作るのは禁止されていない。
using namespace で std を含む名前空間を取り込んだ上だと ::std でなく std という表現をすると
標準ライブラリの std でないものを指す可能性があるというのが今の話題。
でも禁止されてないからといって std という名前を付けるやつはおらんから気にするだけあほらしいでというのが反論。
その std は ::std のことやで。
その std を拡張することは禁止されているが、
別の名前空間の下に std という名前空間を作るのは禁止されていない。
using namespace で std を含む名前空間を取り込んだ上だと ::std でなく std という表現をすると
標準ライブラリの std でないものを指す可能性があるというのが今の話題。
でも禁止されてないからといって std という名前を付けるやつはおらんから気にするだけあほらしいでというのが反論。
943デフォルトの名無しさん
2020/10/08(木) 20:13:56.08ID:3LpdeaMK >>935が言ってる採用されるか、てのは「相手が」だと思うが
C++標準の話ではないやろ
C++標準の話ではないやろ
944はちみつ餃子 ◆8X2XSCHEME
2020/10/08(木) 20:41:41.67ID:xCgN3gCo >>941
std (::std) に定義を追加することは禁じられているが特殊化を追加することは禁じられていなかった。
しかし C++20 からはこれも禁止になる。
カスタマイズポイントという仕組みが用意されたのでこれを使うのが (今後は) 望ましい。
std (::std) に定義を追加することは禁じられているが特殊化を追加することは禁じられていなかった。
しかし C++20 からはこれも禁止になる。
カスタマイズポイントという仕組みが用意されたのでこれを使うのが (今後は) 望ましい。
945sage
2020/10/08(木) 20:42:23.39ID:5vNQ47uu >>942
C++標準にnamespace std を ::stdとする定義ってあったっけ?
『standard libraryの名前xは ::std::xとして定義しろ(20.5.1.1.3)』
というのはあるけど、namespace std = ::std という定義じゃないよね?
最近は標準を読んでないから見落としあるかもしれんが、
ざっと見た範囲では無さそうだった。
C++標準にnamespace std を ::stdとする定義ってあったっけ?
『standard libraryの名前xは ::std::xとして定義しろ(20.5.1.1.3)』
というのはあるけど、namespace std = ::std という定義じゃないよね?
最近は標準を読んでないから見落としあるかもしれんが、
ざっと見た範囲では無さそうだった。
946はちみつ餃子 ◆8X2XSCHEME
2020/10/08(木) 22:31:10.36ID:xCgN3gCo >>945
そう。
using namespace std; の std が ::std でないものを指す可能性があるが、
拡張を禁じている std というのは ::std のことなので、
大元の議論は ::std を拡張するなんていう話はしてないという指摘をしてる。
そう。
using namespace std; の std が ::std でないものを指す可能性があるが、
拡張を禁じている std というのは ::std のことなので、
大元の議論は ::std を拡張するなんていう話はしてないという指摘をしてる。
947デフォルトの名無しさん
2020/10/09(金) 00:24:46.45ID:Sv65jxff ID:FCbCRYtX さんはグローバル以外で自分のコードから見えるスコープに誰かが
std という名前を宣言している可能性も考慮して万全の策を取っているんですね。すごいなぁ。
ということは当然、誰かが #define std ... している可能性も考慮して
::std を使う行の前には必ず #undef std も書くのでしょうね。すごいなぁ。
std という名前を宣言している可能性も考慮して万全の策を取っているんですね。すごいなぁ。
ということは当然、誰かが #define std ... している可能性も考慮して
::std を使う行の前には必ず #undef std も書くのでしょうね。すごいなぁ。
948デフォルトの名無しさん
2020/10/09(金) 03:44:42.22ID:eAzl4WVQ 「::」って打つのは超々々多大なコストですもんね。すごいですよね。
949sage
2020/10/09(金) 03:59:02.26ID:eAfWXkzh >>946
16.5.4.2.1 Namespace std
Unless otherwise specified, the behavior of a program is undefined if it adds declarations or definitions
to namespace std or to a namespace within namespace std.
で、::stdの規定があるのは
16.5.1.1 Library contents
Whenever a name x defined in the standard library is mentioned, the name x is assumed to be fully qualified
as ::std::x, unless explicitly described otherwise. For example, if the Effects: element for library function F
is described as calling library function G, the function ::std::G is meant.
だけだから、拡張を禁じているのが::stdだけというのは言いすぎじゃね?
標準化の経過を追っているわけじゃないからこの解釈が妥当か知らんが。
16.5.4.2.1 Namespace std
Unless otherwise specified, the behavior of a program is undefined if it adds declarations or definitions
to namespace std or to a namespace within namespace std.
で、::stdの規定があるのは
16.5.1.1 Library contents
Whenever a name x defined in the standard library is mentioned, the name x is assumed to be fully qualified
as ::std::x, unless explicitly described otherwise. For example, if the Effects: element for library function F
is described as calling library function G, the function ::std::G is meant.
だけだから、拡張を禁じているのが::stdだけというのは言いすぎじゃね?
標準化の経過を追っているわけじゃないからこの解釈が妥当か知らんが。
950デフォルトの名無しさん
2020/10/09(金) 07:35:33.10ID:TjErAM+z951デフォルトの名無しさん
2020/10/09(金) 07:36:25.15ID:TjErAM+z >>943
「相手が」stdをキーワードにできると思うのか?
「相手が」stdをキーワードにできると思うのか?
952デフォルトの名無しさん
2020/10/09(金) 07:48:48.53ID:NEyoYsah953デフォルトの名無しさん
2020/10/09(金) 08:05:41.52ID:TjErAM+z954デフォルトの名無しさん
2020/10/09(金) 08:30:04.27ID:NEyoYsah955デフォルトの名無しさん
2020/10/09(金) 09:46:43.60ID:TjErAM+z >>954
標準ライブラリのxは::std::xだと書いてあるやん
標準ライブラリのxは::std::xだと書いてあるやん
956デフォルトの名無しさん
2020/10/09(金) 09:52:04.08ID:TjErAM+z pathは::std::pathじゃないけどね
957デフォルトの名無しさん
2020/10/09(金) 12:06:02.44ID:NEyoYsah >>955
16.5.4.2.1で拡張を禁止されているのはstdと名前の付いた名前空間で、::stdに限定しないだろ。
と言っているんだが。
反論するなら、標準で
namespace std==::std
としている定義を持ってきてくれ。
16.5.4.2.1で拡張を禁止されているのはstdと名前の付いた名前空間で、::stdに限定しないだろ。
と言っているんだが。
反論するなら、標準で
namespace std==::std
としている定義を持ってきてくれ。
958デフォルトの名無しさん
2020/10/09(金) 12:19:21.22ID:TjErAM+z 話が噛み合ってないな
考え落としで言及がないだけだろと言ったはず
あくまで推測だけどね、考え落としていないとわかるものがあるなら拝見したい
考え落としで言及がないだけだろと言ったはず
あくまで推測だけどね、考え落としていないとわかるものがあるなら拝見したい
959デフォルトの名無しさん
2020/10/09(金) 12:48:04.11ID:NEyoYsah >>958
標準化委員じゃないんだから、議論したかどうかなんてクソどうでもいい。
「::stdじゃないと意味ない」とかいう話をしているんだから、まずは標準でどうなっているかだろ。
標準で「namespace stdを拡張すると未定義」となっているなら、::stdに限らず未定義としか言えんわ。
反証するなら
namespace std==::std
とする証拠を出せよ。
標準化委員じゃないんだから、議論したかどうかなんてクソどうでもいい。
「::stdじゃないと意味ない」とかいう話をしているんだから、まずは標準でどうなっているかだろ。
標準で「namespace stdを拡張すると未定義」となっているなら、::stdに限らず未定義としか言えんわ。
反証するなら
namespace std==::std
とする証拠を出せよ。
960デフォルトの名無しさん
2020/10/09(金) 13:15:13.68ID:TjErAM+z 958と全く同じことなんで二度は言わん
961デフォルトの名無しさん
2020/10/09(金) 13:15:55.31ID:vxTRmbpR 話の流れとはずれますが、C++の仕様の確認のための質問をします。
namespace AAA {
void func() {
std::vector<TYPE> v;
}
}
と書いた場合、コンパイラはstdをAAAの中に最初に探し、AAAの中に見つからなければ
「グローバルな名前空間」から探すので、AAAの中にstdが見つからない場合でも、
::std と書かなくてもエラーにはならないんですよね?
namespace AAA {
void func() {
std::vector<TYPE> v;
}
}
と書いた場合、コンパイラはstdをAAAの中に最初に探し、AAAの中に見つからなければ
「グローバルな名前空間」から探すので、AAAの中にstdが見つからない場合でも、
::std と書かなくてもエラーにはならないんですよね?
962はちみつ餃子 ◆8X2XSCHEME
2020/10/09(金) 13:17:08.39ID:vI140Nir >>959
いやいや、自然言語で書かれている以上は文脈・意図を全く考慮せずに読み解くことは出来んよ。
そんなこと言ったら add という言葉の意味が仕様書内で定義されてるか?
とかいう話にもなりかねんわけで。
仕様書という性質上、なるべく解釈の幅がないように書くべきではあるが、
不確かな場合はどうしたってあるし、経緯に遡って解釈することだってあるよ。
いやいや、自然言語で書かれている以上は文脈・意図を全く考慮せずに読み解くことは出来んよ。
そんなこと言ったら add という言葉の意味が仕様書内で定義されてるか?
とかいう話にもなりかねんわけで。
仕様書という性質上、なるべく解釈の幅がないように書くべきではあるが、
不確かな場合はどうしたってあるし、経緯に遡って解釈することだってあるよ。
963デフォルトの名無しさん
2020/10/09(金) 13:24:30.32ID:vxTRmbpR >>961
[捕捉]
ファイルのパス名の場合、/std と書くとルートから探し、stdと書くと
カレントディレクトリから探すだけでルートは探しませんが、
C++の場合、stdと書いても最初は「カレント名前空間」から探し、
見つからなければ、見つかるまで「親の名前空間」を連鎖的に探して
行くのですよね。
この違いは気を付けなければなりません。パス名との類推から、
ややもすればうっかり混同してしまいそうです。
[捕捉]
ファイルのパス名の場合、/std と書くとルートから探し、stdと書くと
カレントディレクトリから探すだけでルートは探しませんが、
C++の場合、stdと書いても最初は「カレント名前空間」から探し、
見つからなければ、見つかるまで「親の名前空間」を連鎖的に探して
行くのですよね。
この違いは気を付けなければなりません。パス名との類推から、
ややもすればうっかり混同してしまいそうです。
964デフォルトの名無しさん
2020/10/09(金) 17:42:56.92ID:8wCv3rMc コードを書け
社会貢献しろ
社会貢献しろ
965デフォルトの名無しさん
2020/10/09(金) 17:47:40.59ID:m4egzLq0 じゃあ見本でお前のgithubさらしてくれる?
966デフォルトの名無しさん
2020/10/09(金) 18:16:22.78ID:8wCv3rMc >>965
お前はまず働け!
お前はまず働け!
967デフォルトの名無しさん
2020/10/09(金) 18:17:41.17ID:m4egzLq0 はい雑魚
968デフォルトの名無しさん
2020/10/09(金) 19:29:37.80ID:mnBkuaJE このスレは餃子以外はまともな書きこみねえなほんと
969デフォルトの名無しさん
2020/10/09(金) 19:32:46.57ID:NEyoYsah >>962
今回の件と関係するのかね?
極端な例で反論したつもりになられても議論できんわ。
文脈の話をするならば、標準の記載では入れ子になったnamespace Nもnamespace N表記なんだから、特に記載の無い限り入れ子になったnamespace stdもnamespace std表記だろ。
namespace stdを
::stdに限定するなんて、標準の文脈からすればなおさらありえん。
今回の件と関係するのかね?
極端な例で反論したつもりになられても議論できんわ。
文脈の話をするならば、標準の記載では入れ子になったnamespace Nもnamespace N表記なんだから、特に記載の無い限り入れ子になったnamespace stdもnamespace std表記だろ。
namespace stdを
::stdに限定するなんて、標準の文脈からすればなおさらありえん。
970デフォルトの名無しさん
2020/10/09(金) 19:47:52.64ID:fkeFOvGK UBIとかEAのような大規模ゲームってどんなコードで作られてるの?
きっとmain関数の中にスレッドループがあったりはしないんだろうな
タイトル画面ですら複雑な処理してそう
きっとmain関数の中にスレッドループがあったりはしないんだろうな
タイトル画面ですら複雑な処理してそう
971デフォルトの名無しさん
2020/10/09(金) 20:16:53.59ID:m4egzLq0 メインループは回すよ
回さなかったら終了するじゃん
まぁspawnしてjoin待ち見たいなのもよくあるけど
回さなかったら終了するじゃん
まぁspawnしてjoin待ち見たいなのもよくあるけど
972デフォルトの名無しさん
2020/10/10(土) 06:22:29.70ID:W6O5r79w test
973デフォルトの名無しさん
2020/10/10(土) 06:32:13.62ID:tjeCnATK leave
ret
ret
974デフォルトの名無しさん
2020/10/10(土) 07:23:12.80ID:gvSXcuMi >>968
餃子がまとも?ヤベェな。。
餃子がまとも?ヤベェな。。
975デフォルトの名無しさん
2020/10/10(土) 09:08:57.50ID:g6Q5c5Tz976デフォルトの名無しさん
2020/10/10(土) 10:47:12.02ID:TSALDtkC 女の子だったら置換する
977デフォルトの名無しさん
2020/10/10(土) 12:58:42.27ID:24/haesl978デフォルトの名無しさん
2020/10/10(土) 13:01:08.76ID:yhyq5Xqm C++の知識はちゃんとしたものではあるが、それ以外の事は必ずしも
正しくはない。
正しくはない。
979デフォルトの名無しさん
2020/10/10(土) 13:23:13.45ID:g6Q5c5Tz 次スレ警報発令。
980はちみつ餃子 ◆8X2XSCHEME
2020/10/10(土) 13:24:43.37ID:i9YWGOdm981デフォルトの名無しさん
2020/10/10(土) 13:37:41.54ID:g6Q5c5Tz わかりやすく言えば老害
982デフォルトの名無しさん
2020/10/10(土) 14:31:19.76ID:yhyq5Xqm983デフォルトの名無しさん
2020/10/10(土) 14:33:21.17ID:djk9d7ug lispは数学的には美しいけど実用の道具としてはカス
984デフォルトの名無しさん
2020/10/10(土) 14:45:47.75ID:TSALDtkC ※ 個人の感想です
985デフォルトの名無しさん
2020/10/10(土) 14:50:55.66ID:poQTxlfJ このスレの主要なコンテンツ
・不毛な議論
・072/マウントみたいなレス
・昔話
・不毛な議論
・072/マウントみたいなレス
・昔話
986デフォルトの名無しさん
2020/10/10(土) 15:06:39.81ID:g6Q5c5Tz >>985
不要じゃなくて主要
不要じゃなくて主要
987デフォルトの名無しさん
2020/10/10(土) 15:31:09.66ID:yhyq5Xqm 質問に答えているのはマウントではなく、国の衰退を防ぐためとか、
プログラミング産業を盛り立てるためとかもある。
プログラミング産業を盛り立てるためとかもある。
988デフォルトの名無しさん
2020/10/10(土) 15:33:26.12ID:lmvlajWr そんな崇高な理念を持ってる奴いねーよ
ただマウント取りたいだけ
ただマウント取りたいだけ
989デフォルトの名無しさん
2020/10/10(土) 15:35:51.69ID:g6Q5c5Tz はちみつ爺さんは世界平和のために書き込んでるんだぞ
990デフォルトの名無しさん
2020/10/10(土) 15:40:29.45ID:yhyq5Xqm >>988
普通にいるぞ。
崇高と言うのとはまた違う。
なぜなら国の衰退や、産業の衰退は、必ず自分にもマイナスになって帰ってくるから。
この板が荒れれば、日本も衰退し、やがて自分の将来も暗くなることは
予想できる。
普通にいるぞ。
崇高と言うのとはまた違う。
なぜなら国の衰退や、産業の衰退は、必ず自分にもマイナスになって帰ってくるから。
この板が荒れれば、日本も衰退し、やがて自分の将来も暗くなることは
予想できる。
991デフォルトの名無しさん
2020/10/10(土) 15:46:52.37ID:yhyq5Xqm たとえば、プログラミング学校、プログラミングの支援ツール、
ゲーム作製ツール、プログラミング言語の解説本、プログラミング処理系
などを仕事にしたり作製したりしている人にとっては、プログラミング
している人を支援することはプログラミングが好きな人を増やし
やがて自分も潤うと考えられる。
だからこのようなスレや板で質問に答えれば彼にとっては得になる。
ゲーム作製ツール、プログラミング言語の解説本、プログラミング処理系
などを仕事にしたり作製したりしている人にとっては、プログラミング
している人を支援することはプログラミングが好きな人を増やし
やがて自分も潤うと考えられる。
だからこのようなスレや板で質問に答えれば彼にとっては得になる。
>>990
数学者の藤原正彦氏のようなことをいってますね‥‥
数学者の藤原正彦氏のようなことをいってますね‥‥
993デフォルトの名無しさん
2020/10/10(土) 16:06:15.00ID:yhyq5Xqm >>992
あの人は、実は人の気持ちが分からない人。
京大生に昼休みの始まりに小学生レベルの分数をさせて、時間がもったいないから
無回答で出て行った人が多かったのに対し、「小学生レベルの分数の問題が解けない」
と本に書いた。
あの人は、実は人の気持ちが分からない人。
京大生に昼休みの始まりに小学生レベルの分数をさせて、時間がもったいないから
無回答で出て行った人が多かったのに対し、「小学生レベルの分数の問題が解けない」
と本に書いた。
994デフォルトの名無しさん
2020/10/10(土) 17:11:28.38ID:THhanVwl >>988
自己紹介乙
自己紹介乙
995デフォルトの名無しさん
2020/10/10(土) 23:14:10.28ID:TSALDtkC 誰か次スレ建てて社会貢献しろよ;;
996デフォルトの名無しさん
2020/10/11(日) 01:14:38.25ID:TCtjmjrc , ,:‘. 。 + ,..
’‘ + ,.. . ..; ', ,:‘
. .; : ’ ' ,:‘.
あ あ ,:‘. +
.. ' ,:‘. . ...:: ’‘
’‘ .; こ ん な に お 断 り し た い
。
. 。 気 持 ち に な っ た の は ,:‘. 。
'+。
初 め て で す .. ' ,:‘.
:: . .. .. ' ,:‘.
ハ,,ハ
( ゚ω゚ )
’‘ + ,.. . ..; ', ,:‘
. .; : ’ ' ,:‘.
あ あ ,:‘. +
.. ' ,:‘. . ...:: ’‘
’‘ .; こ ん な に お 断 り し た い
。
. 。 気 持 ち に な っ た の は ,:‘. 。
'+。
初 め て で す .. ' ,:‘.
:: . .. .. ' ,:‘.
ハ,,ハ
( ゚ω゚ )
997デフォルトの名無しさん
2020/10/11(日) 09:44:54.65ID:ErUdhCxH >>991
英会話教室関係者と似たような構図にしか思えない
英会話教室関係者と似たような構図にしか思えない
998デフォルトの名無しさん
2020/10/11(日) 09:58:02.16ID:kZXFoyze >>993
それは多分別の人だと思いますよ
藤原氏は「アメリカの学生は分数がわかっていない」と昔のエッセーに書いていたのは記憶していますが、
一般の日本人の「数学力」を腐す論調ではなかったと思います
彼のいうことは唯一つ、なんでもいいから「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」
それは多分別の人だと思いますよ
藤原氏は「アメリカの学生は分数がわかっていない」と昔のエッセーに書いていたのは記憶していますが、
一般の日本人の「数学力」を腐す論調ではなかったと思います
彼のいうことは唯一つ、なんでもいいから「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」、「本を読め」
1000デフォルトの名無しさん
2020/10/11(日) 16:32:48.88ID:kZXFoyze 梅太郎
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 91日 2時間 50分 29秒
新しいスレッドを立ててください。
life time: 91日 2時間 50分 29秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 [蚤の市★]
- 東京都「都民の税金1.5兆円が国に奪われている」「全国に分配されている」に地方民ブチギレ [Hitzeschleier★]
- 「もうキモくてキモくて…」29歳女性が語る“おぢアタック”の実態。「俺ならイケるかも」年下女性を狙う勘違い中年男性に共通点が★4 [Hitzeschleier★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ [蚤の市★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- 石破に後ろから鉄砲やめろ!て言う人いるじゃん?石破政権時の石破降ろしには後ろ撃ちと批判しなかったのはなぜ [472617201]
- はいはい
- トランプ、G7に代わるcore 5を発表 [805596214]
- 【悲報】麻生太郎さん、オムツをしていた。晋さん…ここにいたんだね… [731544683]
- 【悲報】新米、全く売れなくて倉庫が満杯になってしまうwwwwwwwwwwwwwwwwwwww [802034645]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★5
