C++相談室 part146

■ このスレッドは過去ログ倉庫に格納されています
2019/11/07(木) 11:35:36.76ID:4wggfTwe
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。

前スレ
C++相談室 part145
http://mevius.5ch.net/test/read.cgi/tech/1568362404/

このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.105【環境依存OK】
http://mevius.5ch.net/test/read.cgi/tech/1556142878/

■長いソースを貼るときはここへ。■
 http://codepad.org/
 https://ideone.com/

[C++ FAQ]
https://isocpp.org/wiki/faq/
http://www.bohyoh.com/CandCPP/FAQ/ (日本語)
2019/11/16(土) 19:41:00.20ID:x87RiFEK
単に継承という言葉の意味を知らない馬鹿が発狂してただけという
2019/11/16(土) 19:45:39.83ID:gk1O1Pjk
伝承なんて伝言ゲームになりそうだな
2019/11/17(日) 03:14:32.70ID:unI7PN4C
2019年になってなお、訳文でもめるのかよ
もう全部英文で良くね?
2019/11/17(日) 03:30:27.32ID:/PPR+DNS
実際そうしてるでしょ
スマートポインタ、ムーブ、ラムダ、constexpr、noexcept、コンセプト、モジュール、
誰もゴミみたいな訳語当てたりせずに英語そのまま使ってるしそれが正しい
2019/11/17(日) 11:14:17.63ID:4jNKOHdS
訳でもめてるというより
ひとりだけ継承という訳にダメ出ししてる状況
一般論として訳や命名は軽視してはならないけど、
これに関してはかなりどうでもいい
2019/11/17(日) 11:52:02.68ID:ADq5wcSz
和訳とか関係なく、術語が一般用語としての意味と必ずしも一致しないなんてのはあたりまえなのにね。
数学なんかそんなのばっかり。
2019/11/17(日) 12:31:55.03ID:JfnSUNsN
4人くらいいるだろう
ま、訳以前にそもそも継承という概念が役立たずだからな
2019/11/17(日) 14:14:53.18ID:0+nTbBo+
こうゆう機能、性質を○○と呼ぼうって順番なのに
○○って名前なのにこうゆう機能が無いのはおかしい!って言うのがアホ
2019/11/17(日) 14:33:49.67ID:cZKVuoHK
prvalueを純右辺値というだけで
ひっ絡んでくんの、このチンピラ?
2019/11/17(日) 15:03:16.97ID:Mp5WsRX6
おまいら暇だな
2019/11/17(日) 18:41:21.48ID:zYX+B2Mq
そんなの程度問題だろ。
2019/11/17(日) 19:00:44.78ID:4jNKOHdS
はいクソ正論でました
2019/11/17(日) 23:37:51.82ID:zYX+B2Mq
仕様内で定義のある用語はその言葉の一般的な意味がどうあれ定義通りに理解すべきではあるんだが、
そもそもある語がテクニカルタームであることがわかりにくい場合ってのはイケてないと思う。
継承という言葉があったらどこかで定義されてるだろって思うけど、
右辺値って書いてあったら右辺にあるやつかなって思われても仕方がない感じがする。
63デフォルトの名無しさん
垢版 |
2019/11/18(月) 05:59:05.21ID:mhcN03Rw
defaultとかexecuteとかの英単語は、それ自体にいろんな意味あるじゃない。
2019/11/18(月) 06:04:42.98ID:oSLwFt1+
債務不履行に処刑かw
2019/11/18(月) 09:06:04.16ID:skAn5Z6m
ドスとかスワップとかコンピュータ用語って昔から怪し杉
2019/11/18(月) 09:42:03.87ID:/QuV8J26
だいたい元の英語のままでも日常語としてみたらなんじゃそら、みたいなのが
ちょいちょいあるのがコンピューター用語
バグ(虫)とか
2019/11/18(月) 10:14:16.18ID:sZ0WVu3/
別にコンピューター用語に限らんけど
2019/11/19(火) 18:45:04.24ID:TjvO49h7
https://ideone.com/CMbxJf
ちょっと聞いてくださいよ。
ファクトリーメソッドのサンプル書いたんですよ。サンプル。
そしたら、子クラスのthisで親クラスのメソッド呼んだら、子クラスが記憶喪失になるんですよ。
おかしいじゃないですかこれ・・・。

あー、もどかしい。
2019/11/19(火) 18:45:47.67ID:TjvO49h7
コンパイルタイムに固定してしまうのか???
2019/11/19(火) 20:24:26.48ID:tvEitVpd
スマポのポリモはよくわかんないから触らないことにしてる
2019/11/19(火) 20:31:26.40ID:GNY4BPsd
DupってCreateのことだと思うんだけど
FactoryMethodなら呼び出し時にクラスのIdを指定しないといかんよ
この例だとDupの返す内容はIFactoryに固定されてしまうので
もともとIFactoryに存在していないXを表示させるのは鼻から悪魔
2019/11/19(火) 20:37:26.15ID:TjvO49h7
やっぱそうですかー。んー。
回答ありがとう。
2019/11/19(火) 20:39:16.34ID:GNY4BPsd
で、もしIFactoryにXを持たせてもこうなる

https://ideone.com/s9beHs

IFactoryとAのメモリレイアウトが違うんだろう
あくまでもDupは生成時にmake_sharedするべき
2019/11/19(火) 21:14:56.35ID:hdRGMNcQ
キャストじゃなくて、インスタンス作るとこでディスパッチがないとな
2019/11/19(火) 21:51:12.33ID:8p0qWsch
ファクトリで思い出したけど
文字列をクラス名とみなしてインスタンス化するにはどーすりゃいいの
他言語のevalみたいなの
2019/11/19(火) 22:01:23.12ID:JHNr41O8
リフレ
2019/11/19(火) 22:06:20.10ID:+Lo3ALxa
>>74
んだね
C++ならif文を重ねるしかない
仮想関数の動きに惑わされず基本を押さえないとな

C++でデザパタやるとどうしても多少の泥臭さは我慢する必要がある
decltypeなんか使ったらコンパイル時に型が固定されちゃうよ
2019/11/19(火) 22:10:34.14ID:+Lo3ALxa
createProduct()は仮想関数にできるね
これでかなりすっきりするのではないかと
んでIfactoryのcreateProduct()は純粋仮想関数にしておく
2019/11/20(水) 12:38:11.71ID:V2Bfpb/x
IFactory内でdecltype(*this)取ってもIFactoryにしかならんよ、コンパイル時の型情報しか取れないんだから
そういうのは(すでに言われてるけど)仮想関数でごにょごにょすべき
仮想関数と共変使えばif文を排除できる
2019/11/20(水) 12:48:17.01ID:V2Bfpb/x
すまん間違えた、共変使ってもIFactory内だとだめだな
make_sharedまでを派生でやらせればいける
2019/11/20(水) 13:12:40.35ID:tR9fBnD5
インスタンス作るとこの振り分けは愚直に書くのが保守性が高くなる気がしてる。
2019/11/20(水) 20:46:41.13ID:9SkvYyRu
"Java言語で学ぶデザインパターン入門"のソースにならって
愚直に書いてみた
突っ込み歓迎

https://ideone.com/uUbAfy
2019/11/21(木) 14:19:11.68ID:+h+7QjsO
ストラウストラップのプログラミング言語C++Vol3以降、
ひさびさにできるだけ新しい仕様に準拠した日本語のC++本買おうと探したんだが
ほとんどまともな日本語本ってないのね
επιστημη、 高橋航平の独習C++
https://www.%61mazon.co.jp/dp/4798150231
表題だけみたけどマルチスレッドとか一切ふれてないのコレ?
とりあえずプログラム実装するならテンプレートなんかよりマルチスレッド/マルチコアプログラムのほうがよっぽど重要だと思うけど?
だれか買った人居ない?
レビューよろしく
2019/11/21(木) 14:23:43.46ID:Gb3w6aC2
江添の本
無料
2019/11/21(木) 15:19:32.83ID:jw+Pn83o
何で禿4があるのに禿3なんかみてるの?
髪薄いから?
2019/11/21(木) 15:37:56.04ID:1M+TYUu+
>>68
親クラスとか子クラスとか言わないでくれ
2019/11/21(木) 15:57:37.16ID:SOJnuxsg
ペアレントクラス、チャイルドクラス
2019/11/21(木) 16:06:01.43ID:wEG3pGFv
>>86
なんで?
2019/11/21(木) 18:44:56.94ID:+h+7QjsO
>>85
日本語のC++本はVol3の時に買っただけで久しく入手してないという意味ね
Vol4は英語版のebookを持ってるが、ひさびさにできるだけ新しい仕様の日本語で書かれたC++が欲しいと言ってるんだよ。おつむの弱いお前
だいたい、C++-11で止まってるVol4今頃見てどーするつもりだおつむの弱いお前www
2019/11/21(木) 18:46:35.73ID:+h+7QjsO
>>94
江添のような異常者の文章は読まないことにしてる
2019/11/21(木) 18:57:32.20ID:+dTDqVIf
標準委員会の人なのに・・・。
2019/11/21(木) 19:01:45.16ID:f5ecgBgu
なに勧めてもケチ付けるだろうから規格書をお勧めするよ
2019/11/21(木) 19:05:37.07ID:Ju9cDeqK
英語読めないのも知能異常では?
2019/11/21(木) 19:24:07.38ID:SB5I0OPT
>>85
あー、おまえ禿4の日本語版あるの知らねえウルトラ情弱かw
英語が苦手でググりスキルも家畜以下じゃ
C++に限ったことじゃねえよな
それはそれはステキな人生送ってそうだな
同業者として失笑が止まらんわw

内容くらい読んでからご託ぬかせよ
おまえみたいに物を知らんやつには
間違いなく勉強になるから
C++11がどういう位置付けかも知らず
営業呼称の数字がでかいの探してるだけだろ

う す ら ハ ゲ
2019/11/21(木) 19:24:50.50ID:SB5I0OPT
85じゃねえ89だ
2019/11/21(木) 19:25:54.77ID:qpXpGc2Y
ハ ゲ っ て 言 う な ! ! !
2019/11/21(木) 19:44:16.65ID:HPhky9Ev
江添ってひとははげてるの?
2019/11/21(木) 19:59:03.17ID:wlMAy4t9
無駄な抵抗はやめて丸刈りにすることだな。
2019/11/21(木) 20:15:37.46ID:+h+7QjsO
>> ID:SB5I0OPT

あほはアンカーのひとつもまともに入れられないってかウスノロ
原書持ってるのに11どまりの今頃Vol.4の日本語訳入手してどーするつもりだ低能


あほは死ねや
ご希望とあらば、ぶち殺してやってもいいぜwww
2019/11/21(木) 20:30:56.20ID:+h+7QjsO
>>94
>C++11がどういう位置付けかも知らず

シングルスレッドのお前は11で止まっとけよ低能
お前のオツムじゃ並列思考は到底無理だろうからよwww
あきらめて下請け土方でもやっとれ。あほ
2019/11/21(木) 20:32:12.70ID:Ju9cDeqK
頭の程度がよくわかる
そりゃ英語も読めないさ
2019/11/21(木) 20:32:45.47ID:JfgYWeJZ
>>100
だから内容くらい読んでから御託ぬかせっての
シングルスレッドと11がどうつながるんだよ
職安通いのおまえのクビみたいなもんだろうが
2019/11/21(木) 20:46:13.11ID:JfgYWeJZ
シングル毛根のくせに11やっても毛が2本に増えたりゃせんぞ

 お ハ ゲ の 旧 太 郎 が
2019/11/21(木) 20:56:51.29ID:JfgYWeJZ
アンカー滑っちゃってすまんな
おまえもせめてアデランスが滑らないように気をつけな
2019/11/21(木) 21:02:49.63ID:JfgYWeJZ
あ、よく見たらこいつC++-11だってw
禿本持っててこれじゃ英語白痴が絶望的なステージなんだな
なあbaldって意味わかる?
2019/11/21(木) 21:04:47.25ID:JfgYWeJZ
あれ? 寝ちゃったのかな
それとも自分の頭から滑落死したか?
2019/11/21(木) 22:25:07.54ID:+3OggeIY
ハゲ:規格と乖離した妄想言語をコンパイル確認せずにドヤ顔で披露する老害。頭頂部に髪が無いのが特徴的
添:ハゲを医者の不養生と揶揄しつつ自分もコンパイル通らないコードをドヤ顔で披露する委員会メンバ。頭髪を剃っているのが特徴的
2019/11/21(木) 22:42:30.25ID:JfgYWeJZ
禿はcfrontの実装者だが
2019/11/22(金) 01:23:48.58ID:9tWBQCxn
ひさしぶりに見たらなにかよくわからないハゲのスレッドになってた
2019/11/22(金) 15:37:51.30ID:h7twVaF1
俺たちがどれだけ頑張ってもC++でハゲには勝てない
2019/11/22(金) 17:31:12.40ID:31qO4/Al
このスレではじめてC++についてまったく非のうちどころのない正しい意見が書きこまれた
2019/11/22(金) 23:28:36.47ID:4cuBkj+o
まずハゲをスレッド生成します
2019/11/22(金) 23:47:27.76ID:Y24HLISL
糸を生成できるなら禿やってない
2019/11/23(土) 02:47:31.93ID:dFQ8RRrN
C++はすぐ深刻なエラーになるからコーディングに注意を要しストレスで禿げる
2019/11/23(土) 04:59:27.38ID:jWWyBC4d
それはあながち否定はできない
まあ俺は禿げていないが
2019/11/23(土) 08:18:19.78ID:FPHze3FN
プログラミング言語好きの人たちが集まるネットコミュニティの
雰囲気にあてられてハゲるんと違うか?
C++界隈は他の言語に比べて攻撃的な物言いをする人が多い気がするぞ。
皆がトーバルズ氏になりたがってる、みたいな。

ハゲ先生の本を(和訳本で)読むと穏やかな人格者っぽい感じなのに。
2019/11/23(土) 09:13:47.22ID:ugNYcsZK
C言語使ってる日本人を想像しろ
2019/11/23(土) 11:19:54.13ID:ZGOtfnpM
C++はもうC#の後追いやってるだけだからなww
テンプレートにうつつ抜かしてる間に生産性以外でもC#に劣る言語仕様に成り下がった
2019/11/23(土) 11:54:18.05ID:EBCdzxcY
C#がC++に勝る点って何?
2019/11/23(土) 12:37:43.36ID:MxAA5A1q
>>116
void君とか頭おかしい連中が目立ってるからだろ

>>110
c++で創薬したるわ
121デフォルトの名無しさん
垢版 |
2019/11/23(土) 13:16:56.60ID:iYvqsLVH
今はやりのpythonを使う人はpybind11とかでpython用のC++プラグイン作るだろうから、これからもC++は色んな所で使われ続ける。
2019/11/23(土) 13:20:40.03ID:jA/F562D
後追いというか、C++を最も使い込んでいるのはMSなんだからC#に似てくるのは当然
2019/11/23(土) 13:38:45.00ID:ZGOtfnpM
何寝言逝ってる
C#で新たな規格が決まって
だいぶ遅れて、C++がそれ取り込んでという順番がつづいてるだろうがwww
2019/11/23(土) 14:42:35.65ID:bse8qODO
>>123
具体例を
2019/11/23(土) 15:03:58.13ID:BDEOs2uu
分かるところだとコルーチン
2019/11/23(土) 15:06:16.23ID:BDEOs2uu
C++/cli経由だけどenum classもそうじゃないかな
2019/11/23(土) 16:14:47.04ID:KvoIJqUR
ハーブシッターいるからね。委員会。
2019/11/23(土) 16:18:17.70ID:pbrffxke
中間言語型のC#はC++の競合にはならない
2019/11/23(土) 16:25:19.22ID:6kdTmmEk
yieldは40年前からある技術だけどな。
cライクの言語に取り入れたという意味ではエポックメイキングだったんだろう。
その2つくらい?
2019/11/23(土) 16:35:44.52ID:U8iKLMmJ
>>127
Herb Sutter
のことですかね。
2019/11/23(土) 16:37:27.45ID:KvoIJqUR
>>130
そこらへん。
2019/11/23(土) 16:46:36.89ID:bse8qODO
>>128
中間言語や VM の存在は C# の本質ではないと思います
マイクロソフトもいずれネイティブコードを吐く C# コンパイラを出してくるでしょう、私には VM なんてなんの腹の足しにもならない無駄な機構にしかみえません
2019/11/23(土) 16:49:37.49ID:KvoIJqUR
PGのVM設計するときに参照するのがx86だったりとかで、結局ロックインしちゃってる気がする。
複数の未知のCPUにJITできるように組んでないような気がする。
2019/11/23(土) 17:12:01.03ID:3WxMvOwa
wintelの目指すトコロはCPUアーキテクチャと専用高級言語の囲い込みでしょ
C++を潰すには、みたいな第二次ハロウィン怪文書を思案中だよきっと
2019/11/23(土) 17:37:47.06ID:CZ47p2RQ
言語で囲い込みとかないない
2019/11/23(土) 18:11:45.72ID:U8iKLMmJ
>>132
今でも .NET の中間コードは、native コード化できます。
2019/11/23(土) 18:14:16.80ID:U8iKLMmJ
>>136
できますが、結局、GCを使うので、C++並の速度にはなりません。
GCが動いた場合、処理時間のオーダーが違うので、CPUがどんなに速くなっても
どんなに最適化を施しても無理です。
2019/11/23(土) 18:31:11.69ID:D2JmV2eo
GC無効化すればいいのか?
2019/11/23(土) 18:34:17.97ID:pbrffxke
deleteないのに
2019/11/23(土) 20:26:44.43ID:pwNFgn+1
GC洗脳にかかったやつを正気に戻すのは大変だぞ
2019/11/23(土) 20:59:39.93ID:W1wK9gMe
ビジネス用途を想定しているC#と基礎技術を支えるC++が競合してると思ってるのが面白い
2019/11/23(土) 21:20:13.50ID:fygFNKSM
GC で止まるのが嫌なら、GCの無い、Rust を使え!

その代わり、かなり注意深くプログラミングしないといけないw
2019/11/23(土) 21:24:45.73ID:W1wK9gMe
注意深くプログラミングしなくていい言語なんてあるのか
2019/11/23(土) 21:28:04.03ID:ItEg5azI
昔は1日の業務の終わりにGCを走らせてから帰宅したもんだ。翌朝までにGCが完了してればそれで充分だった。
いまは物理メモリが広いので速度クリティカルな部分ではGCを無効化するのもありかもしれない。
それだとしてもC#はC++を置き換えられないよ。思想が違うもの。
2019/11/23(土) 21:35:18.52ID:fY6FJFDb
やっぱ今衝突とか爆発しそうなその瞬間に寄りによってGC走ったら悔やんでも悔やみきれないからな
GCなし言語には生き残ってもらわないと
2019/11/23(土) 21:57:34.36ID:jA/F562D
>>145
それはRTOS使わないといけない
C++でも割り込みで予期せず遅れることはある
2019/11/23(土) 22:48:42.12ID:fY6FJFDb
詳しい情報サンクス
2019/11/23(土) 23:09:28.20ID:rsD80hR9
>>145
えっ?
2019/11/23(土) 23:10:31.11ID:rsD80hR9
>>146
えっ?

こっちだった
2019/11/24(日) 15:08:37.94ID:FJ6sVzWZ
Rustはコンパイルが通った時点で(メモリ管理に関しては)注意深くプログラミングし終えたことになる、
抜け穴がないわけではないが普段気にするほどではない
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況