探検
C++相談室 part152
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん
2020/07/12(日) 13:42:20.13ID:TX1mpKr6876デフォルトの名無しさん
2020/10/06(火) 05:41:08.44ID:bkxQK63r c++界隈ってガイジしかいねーのかね…
877デフォルトの名無しさん
2020/10/06(火) 06:34:58.64ID:Q2zsUWrb こんなスレ見て界隈を語るとかw
878デフォルトの名無しさん
2020/10/06(火) 06:49:52.98ID:2iI+f89O 付いていけない不適任者の恨み節うるせー
879デフォルトの名無しさん
2020/10/06(火) 08:02:53.12ID:/wGSs2GX >>867
それ、デマらしいぞ。
それ、デマらしいぞ。
880はちみつ餃子 ◆8X2XSCHEME
2020/10/06(火) 08:42:39.29ID:zdPPSeez881デフォルトの名無しさん
2020/10/06(火) 09:36:25.29ID:aU8CxIwJ882デフォルトの名無しさん
2020/10/06(火) 10:08:20.97ID:aU8CxIwJ んまー低水準開発だと見えてほしくないものが見えてしまっている
レイヤーAとBの初期化が終わらなければレイヤーCの機能を呼んではいけないのに、
という状況は言語によらず普通に発生するから程度なのかもしれんが
C++はその手の罠が大杉問題、
レイヤーAとBの初期化が終わらなければレイヤーCの機能を呼んではいけないのに、
という状況は言語によらず普通に発生するから程度なのかもしれんが
C++はその手の罠が大杉問題、
883デフォルトの名無しさん
2020/10/06(火) 10:09:47.48ID:aU8CxIwJ 最新のC++規格について行けている(キリ
と自称されている方々は、
単にOSが起動完了した状態での使い方に習熟しているだけではないのかどうなのか、
と自称されている方々は、
単にOSが起動完了した状態での使い方に習熟しているだけではないのかどうなのか、
884デフォルトの名無しさん
2020/10/06(火) 10:24:36.80ID:2iI+f89O くだらねえ言いがかりだな
まあそんなことしか言うことねえのはわかるぜ
最大級に軽蔑する
まあそんなことしか言うことねえのはわかるぜ
最大級に軽蔑する
885デフォルトの名無しさん
2020/10/06(火) 10:52:17.76ID:WjG83btQ このスレ観てたら C#++ とか産まれそう
と思った
と思った
886デフォルトの名無しさん
2020/10/06(火) 11:25:21.40ID:/wGSs2GX >>881
プロジェクトのコーティング規約に従えよ。
プロジェクトのコーティング規約に従えよ。
887デフォルトの名無しさん
2020/10/06(火) 11:53:18.32ID:aU8CxIwJ プロジェクトのコーティング規約をしっかり定めさえすれば
空も飛べるはず、
空も飛べるはず、
888デフォルトの名無しさん
2020/10/06(火) 11:55:12.28ID:c3+O5H5/ >>870
まあ、配列が TYPE a[N][M]; ではなく、
vector<vector<TYPE>> a; // ???
が推奨された時点でもう、おかしいから。
しかも、このスレにはvectorと略さずに必ずstd::vectorと書け、とまで言う人までいる。
まあ、配列が TYPE a[N][M]; ではなく、
vector<vector<TYPE>> a; // ???
が推奨された時点でもう、おかしいから。
しかも、このスレにはvectorと略さずに必ずstd::vectorと書け、とまで言う人までいる。
889デフォルトの名無しさん
2020/10/06(火) 11:58:38.89ID:E8GhSeFr vector< vector <TYPE> > a;
はそもそも
TYPE a[N][M];
じゃなくて
TYPE *a[N];
だからなー
はそもそも
TYPE a[N][M];
じゃなくて
TYPE *a[N];
だからなー
890デフォルトの名無しさん
2020/10/06(火) 11:59:48.46ID:aU8CxIwJ >>888
プロジェクトのコーディング規約に従えよ;;
プロジェクトのコーディング規約に従えよ;;
891デフォルトの名無しさん
2020/10/06(火) 12:01:19.58ID:c3+O5H5/ iteratorの書き方も煩雑すぎ、長すぎ。
linked listの場合に効率悪すぎ。
ポインタも生ポインタ費推奨で uniqure_ptr, shared_ptrなどが推奨されているのも
既に言語として破綻してる。
ポインタはCの「命」なのに、unique_ptrなどと書くのは長すぎるので。
アメリカの学生は9割がポインタが理解できないので、
多数決で言語仕様を決定していくと、ポインタを徹底的に排除してしまう。
角度の Radian 法が理解できない人が、Degreeを推奨し続けたりしているようなもの。
AndroidのSDKは、それになっている。
馬鹿じゃないかと思う。
linked listの場合に効率悪すぎ。
ポインタも生ポインタ費推奨で uniqure_ptr, shared_ptrなどが推奨されているのも
既に言語として破綻してる。
ポインタはCの「命」なのに、unique_ptrなどと書くのは長すぎるので。
アメリカの学生は9割がポインタが理解できないので、
多数決で言語仕様を決定していくと、ポインタを徹底的に排除してしまう。
角度の Radian 法が理解できない人が、Degreeを推奨し続けたりしているようなもの。
AndroidのSDKは、それになっている。
馬鹿じゃないかと思う。
892デフォルトの名無しさん
2020/10/06(火) 12:03:14.67ID:aU8CxIwJ893デフォルトの名無しさん
2020/10/06(火) 12:06:36.75ID:c3+O5H5/ 頭が悪い人は、ポインタの表記の優先順位を頭の中で「ほどけない」ので、
優先順位が馬鹿でも分かる
unique_ptr<unique_ptr<T>> p;
という書き方の方が分かり易く感じるのだと思う。
頭の良い人にとっては、ただ書くのが長くなっただけに過ぎないのに。
優先順位が馬鹿でも分かる
unique_ptr<unique_ptr<T>> p;
という書き方の方が分かり易く感じるのだと思う。
頭の良い人にとっては、ただ書くのが長くなっただけに過ぎないのに。
894デフォルトの名無しさん
2020/10/06(火) 12:08:43.10ID:n1AkD2sr >>893
あんたの頭が悪いのは良くわかった
あんたの頭が悪いのは良くわかった
895デフォルトの名無しさん
2020/10/06(火) 12:09:23.24ID:c3+O5H5/ >>892
便利でも書くのが長くなった時点で駄目。
頭の悪い人は、長くても考える量が少なくなる方を好むから、
9割がベギナー止まりであるところのプログラミングの世界で多数決で
良し悪しを決めると長くても考える量が少なくなる方が人気を呼ぶことになる。
しかし、頭の良い人は頭のAIがすぐれているので、考えなくても瞬時に分かって
しまうので、読み解いたり自分で書くときに全く時間が掛からないので、
短くかけるほうが好まれる。
便利でも書くのが長くなった時点で駄目。
頭の悪い人は、長くても考える量が少なくなる方を好むから、
9割がベギナー止まりであるところのプログラミングの世界で多数決で
良し悪しを決めると長くても考える量が少なくなる方が人気を呼ぶことになる。
しかし、頭の良い人は頭のAIがすぐれているので、考えなくても瞬時に分かって
しまうので、読み解いたり自分で書くときに全く時間が掛からないので、
短くかけるほうが好まれる。
896デフォルトの名無しさん
2020/10/06(火) 12:09:50.61ID:c3+O5H5/897デフォルトの名無しさん
2020/10/06(火) 12:12:26.93ID:CFpJLx94898デフォルトの名無しさん
2020/10/06(火) 12:15:41.91ID:c3+O5H5/ >>897
出せるが、スマンがここには書かない。
出せるが、スマンがここには書かない。
899デフォルトの名無しさん
2020/10/06(火) 12:17:57.70ID:CFpJLx94 はい雑魚
900デフォルトの名無しさん
2020/10/06(火) 12:18:47.45ID:aU8CxIwJ 余は真に驚くべき代案を思いついたが
匿名掲示板に書くには余白が狭すぎる、
匿名掲示板に書くには余白が狭すぎる、
901デフォルトの名無しさん
2020/10/06(火) 12:35:34.59ID:6yK3bagl >>896
ネットを除いたお前さんの実世界って、話す相手が自分自身かお母さんくらいしかいないんじゃないの?
ネットを除いたお前さんの実世界って、話す相手が自分自身かお母さんくらいしかいないんじゃないの?
902デフォルトの名無しさん
2020/10/06(火) 12:38:51.95ID:6yK3bagl >>891
生ポインタは言語仕様上、現在でも有効だし、合理的理由があればナマポを使うことを否定されるわけでもないのに、何が不満なのか分からんな。
生ポインタは言語仕様上、現在でも有効だし、合理的理由があればナマポを使うことを否定されるわけでもないのに、何が不満なのか分からんな。
903デフォルトの名無しさん
2020/10/06(火) 12:44:06.33ID:CI7Aw4lV >>882
グローバル変数やスタティック変数のコンストラクタに依存姓のある処理を記述して失敗しているのを目撃することはよくある。
でもそれはロード時に自動実行する機能のある言語では同様に起こりうることだと思うよ。
だいたいシングルトン多用するやつの仕業。
使うと恥ずかしくて死んでしまうようなパターン名ならよかったのに
グローバル変数やスタティック変数のコンストラクタに依存姓のある処理を記述して失敗しているのを目撃することはよくある。
でもそれはロード時に自動実行する機能のある言語では同様に起こりうることだと思うよ。
だいたいシングルトン多用するやつの仕業。
使うと恥ずかしくて死んでしまうようなパターン名ならよかったのに
904デフォルトの名無しさん
2020/10/06(火) 12:56:09.29ID:2iI+f89O std::vector ←イキってるだけのアホ
::std::vector ←こう書かなきゃ意味ねえだろ
::std::vector ←こう書かなきゃ意味ねえだろ
905デフォルトの名無しさん
2020/10/06(火) 13:04:06.67ID:c3+O5H5/ >>901
なんという貧弱なイマジネーション。
なんという貧弱なイマジネーション。
906デフォルトの名無しさん
2020/10/06(火) 14:46:47.18ID:QUhM0XrN 無益な話題ほど盛り上がるな
907デフォルトの名無しさん
2020/10/06(火) 18:37:05.86ID:Yd4gYmDo メモ帳でコード書いてんの?
普通のエディタは補完が効くよ
普通のエディタは補完が効くよ
909デフォルトの名無しさん
2020/10/06(火) 19:20:46.29ID:c3+O5H5/ この板で一番馬鹿っぽいのに自分は賢いと思っているのが QZだ。
恐らく女。
女の中では賢いのかもしれないが、男の中では普通。
恐らく女。
女の中では賢いのかもしれないが、男の中では普通。
910デフォルトの名無しさん
2020/10/06(火) 20:13:08.46ID:k5Zg1BNu912デフォルトの名無しさん
2020/10/07(水) 01:57:07.30ID:OVJx2Nts 全くオブジェクト思考できない言語w
913デフォルトの名無しさん
2020/10/07(水) 03:07:05.72ID:Bq/qs/XJ C++で食ってるフリーランスいる?
いくつでどういう技能を持ってていくら貰ってるか教えてくれよ
いくつでどういう技能を持ってていくら貰ってるか教えてくれよ
914デフォルトの名無しさん
2020/10/07(水) 03:10:26.00ID:5YLES8U8 >>911
>>恐らく女。
>面白い意見ですね、どのような推論からこの結論が導き出されたのか興味があります
普段から、馬鹿な応答が多かったし、
「自分でコンテナクラス(リストなど)を作れるから天才」
だとか、男だったら基本中の基本の出来て当たり前の事が出来るだけで天才と言っている
辺り、如何に周りのレベルが低いかが分かったから。
>>恐らく女。
>面白い意見ですね、どのような推論からこの結論が導き出されたのか興味があります
普段から、馬鹿な応答が多かったし、
「自分でコンテナクラス(リストなど)を作れるから天才」
だとか、男だったら基本中の基本の出来て当たり前の事が出来るだけで天才と言っている
辺り、如何に周りのレベルが低いかが分かったから。
915デフォルトの名無しさん
2020/10/07(水) 09:58:24.09ID:Ht8WKaAR >>913
教師なら有り得るなω
教師なら有り得るなω
916デフォルトの名無しさん
2020/10/08(木) 11:06:31.29ID:2a0CIcHX917はちみつ餃子 ◆8X2XSCHEME
2020/10/08(木) 11:23:23.22ID:xCgN3gCo :: が増えると tanasinn な感じになるな。
918デフォルトの名無しさん
2020/10/08(木) 14:32:44.44ID:FCbCRYtX919デフォルトの名無しさん
2020/10/08(木) 14:53:12.38ID:k2d5Ic0g stdが被る可能性はないに等しいのでセーフという合理性
920デフォルトの名無しさん
2020/10/08(木) 15:16:36.24ID:FCbCRYtX あのなあ、ここ技術板だぜ?
合理性っておかしいだろ
合理性っておかしいだろ
921デフォルトの名無しさん
2020/10/08(木) 15:23:06.13ID:3RUxQQIS >>920
技術板だからこそ、教条主義的な完全性より現実的な条件での合理的な判断があってしかるべきだと思うぞ。
技術板だからこそ、教条主義的な完全性より現実的な条件での合理的な判断があってしかるべきだと思うぞ。
922はちみつ餃子 ◆8X2XSCHEME
2020/10/08(木) 15:43:13.43ID:xCgN3gCo プログラミングはサイエンスの部分もなくはないがエンジニアリング (またはテクノロジ) 寄りの話だろ。
一部の隙もない論理を構築したいわけじゃなくて問題を解決したいんだ。
で、 std のかわりに ::std と書くことで解決される問題が
このスレの誰かの前に出現したことがただの一度でもあると思うのかね?
トップレベル以外の名前空間に std が現れるのは仕様で禁止されていないっぽいから、
そりゃあ可能性だけで言えば絶対にないとは言えんだろうが、
現実にはこの二者がいたらどちらがよりクソだと思う?
・ 変なところに std という名前空間を作るやつ
・ ::std と書かずに std と書くやつ
前者があまりにもクソすぎるのでそういうやつはおらんだろということで
だいたい上手く運用できておるのや。
一部の隙もない論理を構築したいわけじゃなくて問題を解決したいんだ。
で、 std のかわりに ::std と書くことで解決される問題が
このスレの誰かの前に出現したことがただの一度でもあると思うのかね?
トップレベル以外の名前空間に std が現れるのは仕様で禁止されていないっぽいから、
そりゃあ可能性だけで言えば絶対にないとは言えんだろうが、
現実にはこの二者がいたらどちらがよりクソだと思う?
・ 変なところに std という名前空間を作るやつ
・ ::std と書かずに std と書くやつ
前者があまりにもクソすぎるのでそういうやつはおらんだろということで
だいたい上手く運用できておるのや。
923デフォルトの名無しさん
2020/10/08(木) 15:45:51.60ID:FCbCRYtX 自己弁護にしか聞こえねえな
"今までそうやってきたから正しいことにしたい"
批判的な相手がそれで納得するとでも思っているのか
"今までそうやってきたから正しいことにしたい"
批判的な相手がそれで納得するとでも思っているのか
924デフォルトの名無しさん
2020/10/08(木) 15:48:46.09ID:bMUfOck+ #define std ::std
925デフォルトの名無しさん
2020/10/08(木) 15:51:15.44ID:FCbCRYtX いっそstdをキーワードにすればって話ならまだわかるぜ
おまえらの論法で言うところの関数名やオブジェクト名をstdにはしねえんだから
下線で始まらないoperator""をstd以外には作らせないこともできるね
おまえらの論法で言うところの関数名やオブジェクト名をstdにはしねえんだから
下線で始まらないoperator""をstd以外には作らせないこともできるね
926はちみつ餃子 ◆8X2XSCHEME
2020/10/08(木) 16:12:32.18ID:xCgN3gCo >>923
そうだよ。
std という名前を作らないか ::std を使うかのどちらかが達成されていればよく、
std という名前を作らないという習慣で今までやってきるのをあえて乱したいのはなんで?
っていう話だよ。
そうだよ。
std という名前を作らないか ::std を使うかのどちらかが達成されていればよく、
std という名前を作らないという習慣で今までやってきるのをあえて乱したいのはなんで?
っていう話だよ。
927デフォルトの名無しさん
2020/10/08(木) 16:16:24.11ID:2a0CIcHX ::stdってしてたら逆に何こいつイキってんの?って思うけどなw
928はちみつ餃子 ◆8X2XSCHEME
2020/10/08(木) 16:18:31.50ID:xCgN3gCo929デフォルトの名無しさん
2020/10/08(木) 16:25:12.01ID:OzyhYKZT >>923
世の中には話の通じない相手がいるのは分かってるし、そんな相手を納得させることに無駄なエネルギーを費やす価値はない。お前さんが納得しなくも他の誰も困らないからどうでもいい。
というのも合理性だなw
世の中には話の通じない相手がいるのは分かってるし、そんな相手を納得させることに無駄なエネルギーを費やす価値はない。お前さんが納得しなくも他の誰も困らないからどうでもいい。
というのも合理性だなw
930デフォルトの名無しさん
2020/10/08(木) 16:30:41.96ID:FCbCRYtX 「合理性」を咎められたのが余程効いたようだな
意味をここでだけ変更したくてそんなに必死になるのは
そういう手合いはstdの意味をここだけ変更もしかねねえな
意味をここでだけ変更したくてそんなに必死になるのは
そういう手合いはstdの意味をここだけ変更もしかねねえな
931デフォルトの名無しさん
2020/10/08(木) 16:32:53.69ID:FCbCRYtX >>928
どちらが正しいかって論点では分が悪いもんなw
どちらが正しいかって論点では分が悪いもんなw
932デフォルトの名無しさん
2020/10/08(木) 16:36:13.85ID:FCbCRYtX > ID:2a0CIcHX
感情論ばっかりだな
感情論ばっかりだな
933デフォルトの名無しさん
2020/10/08(木) 16:41:10.44ID:kXp3o/p+ コードヘタクソなヤツは変なところ拘る
934デフォルトの名無しさん
2020/10/08(木) 16:41:16.92ID:k2d5Ic0g ::stdって自己満でしかない
リターンがない
特に困ってない問題を解決したところで人生の無駄遣い
そこがんばったところでアホなマクロがひとつ混ざれば破綻する可能性はあるわけで
ある程度の良識や常識に依存するのは仕方ない
可能性のスケール感を考えられるかどうかとも言える
まぁやめろとは言ってないんだから好きにすればいいじゃん、ひとりで書いてる限りは
リターンがない
特に困ってない問題を解決したところで人生の無駄遣い
そこがんばったところでアホなマクロがひとつ混ざれば破綻する可能性はあるわけで
ある程度の良識や常識に依存するのは仕方ない
可能性のスケール感を考えられるかどうかとも言える
まぁやめろとは言ってないんだから好きにすればいいじゃん、ひとりで書いてる限りは
935デフォルトの名無しさん
2020/10/08(木) 16:59:59.98ID:FCbCRYtX 実害が出る前に予防的措置ということはあるぞ
それから俺は既存のコードを書き直せなんて言ってない
そんなのはてめーらの勝手だ
アカデミックな目線でおかしいと思うところを批判しているだけだ
代替案も出してる(採用されるか否かはともかく)
それから俺は既存のコードを書き直せなんて言ってない
そんなのはてめーらの勝手だ
アカデミックな目線でおかしいと思うところを批判しているだけだ
代替案も出してる(採用されるか否かはともかく)
936デフォルトの名無しさん
2020/10/08(木) 17:01:17.10ID:FCbCRYtX 批判と非難を一緒にしないでくれな
937デフォルトの名無しさん
2020/10/08(木) 17:10:34.05ID:bhEfUzRp 初心者から抜けられない・・・
938はちみつ餃子 ◆8X2XSCHEME
2020/10/08(木) 18:12:40.88ID:xCgN3gCo >>935
もっと広範囲に std という名前を禁止する提案はもう出てるよ。
言語仕様として良くなかったというのは言わなくても皆がわかってるので、
そんなに強くいわなくてもいいよ。
C++ の仕様がグダグダなんていうのは今更のことじゃん。
その上で、 std という名前を定義しないという運用上の習慣は確立してるって話。
もっと広範囲に std という名前を禁止する提案はもう出てるよ。
言語仕様として良くなかったというのは言わなくても皆がわかってるので、
そんなに強くいわなくてもいいよ。
C++ の仕様がグダグダなんていうのは今更のことじゃん。
その上で、 std という名前を定義しないという運用上の習慣は確立してるって話。
939デフォルトの名無しさん
2020/10/08(木) 19:16:21.52ID:Bj+fAE8H そもそもstd名前空間(::stdじゃなくて)の拡張は未定義じゃね?
(17.6.4.2.1 Namespace std)
何のためにstd名前空間を定義するの?
(17.6.4.2.1 Namespace std)
何のためにstd名前空間を定義するの?
940デフォルトの名無しさん
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:g6Q5c5Tzレス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 自民・麻生太郎 副総裁 石破政権の1年は「どよーん」 高市政権の発足で「何となく明るくなった」「世の中のことが決まり動いている」 [Hitzeschleier★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ [蚤の市★]
- 【おこめ券】鈴木憲和農相 小泉前農相の備蓄米放出を“反省”「備蓄の円滑な運営を図ってまいります」 [Hitzeschleier★]
- 【27歳会社員】「自慰行為に使うために」コインランドリーの乾燥機から24歳女性の下着など計11点(時価8万2080円相当)盗んだ疑い [nita★]
- 1人3千円の食品高騰対策、何に使える? あいまいなまま衆院通過 [蚤の市★]
- 東京都「都民の税金1.5兆円が国に奪われている」「全国に分配されている」に地方民ブチギレ [Hitzeschleier★]
- 麻生太郎が石破政権の1年を酷評「どよーんとして何も動かない感じだったな。それに引き換え高市政権は物事が動いている」 [597533159]
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★3
- 【実況】博衣こよりのえちえちダンガンロンパ2🧪★4
- 【速報】室井佑月、米山隆一との離婚を決意wwwwwwwwwwwwwwwwwwww [802034645]
- 官僚「台湾有事についての質問か、『政府として逐一答えない』と…(カタカタカタ)」高市「私1人で答弁できるわよ!」 [972432215]
- 【朗報】 「ネット流行語100」に俺たちの『機動戦士Gundam GQuuuuuuX』&『シイコ・スガイ』キタ━━━━━━(゚∀゚)━━━━━━!!!!! [303493227]
