X



C++相談室 part136
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん (ワッチョイ bf81-LHz9)
垢版 |
2018/06/07(木) 23:40:12.36ID:GNQuDMaA0
次スレを立てる時は本文の1行目に以下を追加して下さい。
!extend:on:vvvvv:1000:512

C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレにお願いします。

前スレ
C++相談室 part135
https://mevius.5ch.net/test/read.cgi/tech/1522495206/

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

■長いソースを貼るときはここへ。■
 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
0003デフォルトの名無しさん (ワッチョイ 13cf-9TS0)
垢版 |
2018/06/08(金) 01:28:54.52ID:P6Kg0b7q0
STLつかうと一気に実行ファイルサイズが10倍に?!

環境によるだろ。
俺はBorland-C++5.6.2に -D_RTLDLL オプションを指定して、極力
ランタイムを使用するようにして使っているが、例えばstd::vectorを
使っても使わない時と比べ10Kほどしか増えない

すげえ。ダイナミックリンクしといてファイルサイズが増えないとかいってるよ。この人。

C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。
とかいうエラーが出るんだけどこれってどうすればいいの?

#include <stdafx.h>
後死ね。

言葉が悪いな。それで教えているつもりか。
まぁヒントぐらいにはなったな。
うむごくろう。

---- テンプレ ここまで ----
0004デフォルトの名無しさん
垢版 |
2018/06/08(金) 02:27:58.00
C++解ると豪語していた人が後日茂みで戉だらけの死体で発見される例が後を絶ちません
C++解るは何か宗教的禁忌の呪詛なのだと思います
0010デフォルトの名無しさん (バッミングク MMb5-uWQQ)
垢版 |
2018/06/09(土) 15:22:59.44ID:Ee9G7X6vM
c++11とか14とか17って何ですか?
0012デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 16:23:33.39ID:HrZn4m/i0
C++完全に理解したわ。
0020デフォルトの名無しさん (ワッチョイ 13d2-MIhW)
垢版 |
2018/06/09(土) 19:33:13.71ID:O5NYHXm/0
最近は規格を完全に満たしたコンパイラって存在するの?
0021デフォルトの名無しさん (ワッチョイ a9f2-LHz9)
垢版 |
2018/06/09(土) 19:46:23.57ID:ar7EC0zB0
C++11は結構「満を持して」って感じだったけど、その後14だ17だとアップデートサイクルが
短くなるならCfrontに回帰してもらった方がハッピーな気がしてきた。
今のC++で技術的にどのくらいしんどいのかはわからないけど、TypeScriptやBabelなんかの
JS界隈でうまくいってるエコシステムがうらやましい。
0022デフォルトの名無しさん (ワッチョイ d19f-NuDx)
垢版 |
2018/06/09(土) 19:59:17.07ID:MhKfyDgC0
>>21
> JS界隈でうまくいってるエコシステムがうらやましい。
それはお前がJSを知らず、隣の芝が青く見えるだけ。
あれは完全に屋上架屋で糞だ。C++のノリで動くと思ったら大間違い。
0024デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 20:09:30.83ID:HrZn4m/i0
コンパイラを駆動するためのプログラミングと、実行可能形式を駆動するためのプログラミングを一度にできる、一粒で二度おいしい言語がC++である。
つまり、ビールとワインを混ぜたらとてもまずかったというお話。
0025デフォルトの名無しさん (ワッチョイ a9f2-LHz9)
垢版 |
2018/06/09(土) 20:11:55.73ID:ar7EC0zB0
>>22

TypeScriptもBabelも普通に使ってるけど?
それがうまくいってるのを見てるからこそC++もそうできたらいいと思ったんだが。
まぁ、コンパイルに時間がかかるのとデバッグがちょっと隔靴掻痒気味ってのはある。
0026デフォルトの名無しさん (ワッチョイ 6b13-LHz9)
垢版 |
2018/06/09(土) 20:19:03.73ID:nw+86khE0
>>21
つーかC++11って、みんなもう待ちくたびれて
C++0xという期限も守れなくて、
一部でC++オワコン?とか言い出してる雰囲気の中、
ああ、やっぱりあるのかという復活祭的なもんだったろ
0028デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 20:22:20.01ID:HrZn4m/i0
>>27
何を言うか!
Javascriptが最強の完成された言語だからこそ、Typescriptが誕生できたんじゃないか!!!
0030デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 20:25:24.52ID:HrZn4m/i0
C++がこっち方向→に糞だとすると、Javascriptは←あっち方向に糞。
0031デフォルトの名無しさん (ワッチョイ d19f-NuDx)
垢版 |
2018/06/09(土) 20:25:28.19ID:MhKfyDgC0
>>25
要するに、自分が慣れている環境を持ち込みたいだけだろ。
ならJavaScript流に言えば、お前が作れ、でしかないだろ。
ご自由にOSSにすればいい。誰も使わないと思うけど。
0032デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 20:29:08.98ID:HrZn4m/i0
歯糞耳糞を笑うというが、本物のウンコには誰も勝てなかったというお話。
0033デフォルトの名無しさん (ワッチョイ a9f2-LHz9)
垢版 |
2018/06/09(土) 20:34:01.02ID:ar7EC0zB0
>>26
結構印象が違うもんだね。
C++03が失敗気味でオワコン視された雰囲気はわかるけど、だからこそ次は失敗できない
C++11はそれなりの完成度になったと思うんだが。逆に14や17は蛇足気味のような。
0034デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 20:34:26.33ID:HrZn4m/i0
しかしJavascriptとC++を完全に理解した俺が最強ってことだろうな。
0037デフォルトの名無しさん (ワッチョイ 6b13-LHz9)
垢版 |
2018/06/09(土) 21:28:50.56ID:nw+86khE0
>>33
いや14は重要なバグ直しでautoが安心して使えるようになったし
17はfilesystemやstring_viewにexecution(これすげー)が入って名実共にメジャー
やっぱC++03からの沈黙が異常すぎたんだよ
0038はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b6f-LHz9)
垢版 |
2018/06/09(土) 21:39:20.39ID:EdmRUNh70
>>36
常に最新を使えとまでは思わんが、さすがに C++11 は人権だと思うぞ。

C++14 や C++17 はユーザ視点では重要なものも含まれるとは思うが、
C++11 に間に合わなかったりミスがあったりしたのを補った、
マイナーアップデートという印象は有るな。
0043はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b6f-LHz9)
垢版 |
2018/06/09(土) 22:05:12.82ID:EdmRUNh70
>>39
えっ、それって重要な機能のひとつじゃね?

ライブラリは標準になくてもなんとかなるけど、
基礎的な機能で大事なトピックがてんこ盛りなのが C++11 でしょ。

最低でも

auto
decltype
constexpr
可変長引数テンプレート

あたりは無いとつらすぎるんですけど!
0044デフォルトの名無しさん (ワッチョイ d19f-NuDx)
垢版 |
2018/06/09(土) 22:20:04.89ID:MhKfyDgC0
>>38
> 常に最新を使えとまでは思わんが、さすがに C++11 は人権だと思うぞ。
そりゃ人に依るだろ。今でもCは現役なんだし。

>>43
ちなみに他言語を使わない理由は何だ?
おそらく君はインラインアセンブラとか全く使わない人だろ?
0045デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 22:26:37.24ID:HrZn4m/i0
C++17はDoxygenを凄いことにする。
ひどい奴だ。
0046デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 22:30:21.93ID:HrZn4m/i0
std::unique_ptrはユニポと読むんだよな?
0047はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b6f-LHz9)
垢版 |
2018/06/09(土) 22:31:54.21ID:EdmRUNh70
>>44
> ちなみに他言語を使わない理由は何だ?

Scheme スレが私の巣だと思ってるくらいには Scheme 派なんだけど、
話題が少なくて暇だからこっちに出てきてる感じ。

> おそらく君はインラインアセンブラとか全く使わない人だろ?

使わないに越したことは無いというのが基本姿勢ではあるけど、使う必要があるので使うよ。

どういう意図で言ってんのかよくわかんないんだけど、
C++11 以降に加わった機能がスゲー大事という気持ちとこれらが何か関係あるの?
0048デフォルトの名無しさん (ワッチョイ 81b3-8neN)
垢版 |
2018/06/09(土) 22:44:45.79ID:HrZn4m/i0
人は皆生まれながらにC++が好きだけど、その気持ちに気づくかどうかに違いが出るんだよね。
0049デフォルトの名無しさん
垢版 |
2018/06/09(土) 22:49:33.71
がしゃーん
     がしゃーん

   △ ¥ ▲
  ( C ++ C )
  (      )
 /│  肉  │\
<  \___/  >
    ┃  ┃
   =  =
C++17だよ
自動で Doxygenを凄いことにしてくれる
ひどいやつだよ
0051デフォルトの名無しさん (ワッチョイ d19f-NuDx)
垢版 |
2018/06/09(土) 23:00:19.02ID:MhKfyDgC0
>>47
俺はC++を使う利点は

・高位から低位まで同一言語でカバー出来る点

だと思っていて、逆に言えば、
高位でしか組まないのなら他高位言語を使った方がいいと思ってるんだよ。
だからC++の利点を生かす為には、

・高位の機能と低位の機能を混ぜて使う
 =スマポもラムダもナマポもインラインアセンブラも 『同時に』 使う

事が必要で、逆に、このスレに巣くっているナマポ禁止な連中には若干懐疑的なんだよ。
それなら他言語の方が生産性が高いから。
必要ならその部分だけCのDLLにすれば済む話だし。

そして最近の新機能は高位向けの物が多いから、聞いてみたわけだ。
Schemeは知らんが、他高位言語を使っているのなら済まんかった。
0052はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b6f-LHz9)
垢版 |
2018/06/09(土) 23:16:26.11ID:EdmRUNh70
>>51
高から低をカバーしてるのが良いというのは私もまったく同意見だよ。
だから、高から低をカバーと言っておきながら、高水準の部分は他言語に任せた方がいいというのはなんか矛盾してないか?

俺は「(現代の水準では) 足りてないからもっと (少なくとも C++11 で追加された分くらいは) 欲しいよな」って気持ちなわけ。
0053デフォルトの名無しさん (ワッチョイ d19f-NuDx)
垢版 |
2018/06/09(土) 23:38:56.87ID:MhKfyDgC0
>>52
矛盾してない。

高水準の部分はC++は他言語に対して後れているから、
C++がそれを追加するのは妥当ではある。

ただ、俺なら他言語で組んで、CのDLLを呼ぶようにする。
それだと、他言語の進んでいる高水準機能を使えるから。
わざわざ遅れているC++に対して文句を言いながら使う意味がない。

例えば、C#がその作りになってるでしょ。
マーシャルがウザイか、C++の機能的周回遅れがウザイかってだけ。
勿論、インラインアセンブラを使いたいならC++しか解がない。
で、ナマポ禁止派はいったい何がしたいんだ?ってのが疑問で、
それだったら俺と同じでC#+CのDLLで良いじゃん、と思うわけ。
0056デフォルトの名無しさん (ワッチョイ d19f-NuDx)
垢版 |
2018/06/10(日) 00:35:42.54ID:CUftH0/Q0
99.9%がスマポなら、最初からスマポがデフォの言語を使った方が捗るでしょ。
Rustでもいいし、C#やJava等のGC言語でもいいし、PythonやRubyのようなスクリプト言語でもいい。
残り0.1%をマーシャルなりしてCのDLLで。
0057デフォルトの名無しさん (ワッチョイ 135e-JdDl)
垢版 |
2018/06/10(日) 00:42:34.12ID:z8yivKF60
話をぶった切ってすんません。

複数のスレッドで

thread_local int* p;

p=new int [1000];

で確保したヒープ領域はやっぱりスレッドセーフ、じゃない、データ競合が
おきるんですか?
0058はちみつ餃子 ◆8X2XSCHEME (ワッチョイ 9b6f-LHz9)
垢版 |
2018/06/10(日) 00:59:52.96ID:NuBmj+pR0
>>53
まー、生ポインタは一箇所たりとも許さんってほどの原理主義は過激だとは思うよ。
俺も生ポインタを使わないことはないし、 goto を使うことだってあるし。

ただ、「低レイヤから高レイヤまでをひとつの言語の中で扱える」というのは
「高レイヤな機能で低レイヤを隠蔽可能だ」ということであって、
低レイヤを低レイヤのままで扱うスタイルを是とするものではない。
直接的な部分ではインラインアセンブラを使うことが有っても、
その上のレイヤに持ち上げるときには必ずスマートポインタを使えってくらいの主張なら真っ当だと思う。

C++ なんてそもそもがクソなんだから、
解決のために追加された機能は積極的に使わないとやっとれんわ。
(でも好き。)
■ このスレッドは過去ログ倉庫に格納されています

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