C++の問題点について語るスレです
C++ってなんであんなに肥大化しちゃったの?
http://pc11.2ch.net/test/read.cgi/tech/1219902495/
探検
【信者】C++の問題点【アンチ】
■ このスレッドは過去ログ倉庫に格納されています
2008/10/10(金) 09:13:53
314デフォルトの名無しさん
2009/08/22(土) 02:37:44 コードジェネレータは全てメタ言語だという主張だろう。
意味不明ということは無い。
言及する価値も無いが。
意味不明ということは無い。
言及する価値も無いが。
315デフォルトの名無しさん
2009/09/02(水) 11:19:27 タメグチ言語だ
316デフォルトの名無しさん
2009/09/04(金) 18:21:45317デフォルトの名無しさん
2009/09/04(金) 19:46:11 肥大化って一体何のこといってるの?
メモリが貧弱な組み込みデバイスでもC++のコードは思い通りに動いてくれてますけど。
メモリが貧弱な組み込みデバイスでもC++のコードは思い通りに動いてくれてますけど。
318デフォルトの名無しさん
2009/09/05(土) 02:57:16 わからないなら黙ってれば
319デフォルトの名無しさん
2009/09/05(土) 12:00:36320デフォルトの名無しさん
2009/09/05(土) 20:34:15321デフォルトの名無しさん
2009/09/06(日) 12:04:24 >>320
スマポを使えば無効にしてくれるよ。
スマポを使えば無効にしてくれるよ。
322デフォルトの名無しさん
2009/09/06(日) 19:41:48 スマポは無意味な肥大化だよな
323デフォルトの名無しさん
2009/09/06(日) 19:44:15 いや、十分意味があるだろ。肥大化でも無いし。
324デフォルトの名無しさん
2009/09/07(月) 01:47:58 スマポには嫌らしい落とし穴が
325デフォルトの名無しさん
2009/09/07(月) 01:58:13 使わないともっとでかい穴が開きっぱなしなんだがな。
326デフォルトの名無しさん
2009/09/07(月) 02:03:11 結局馬鹿が使えば穴開きっぱなしなんだから無駄な肥大化じゃねって言う
327デフォルトの名無しさん
2009/09/07(月) 02:08:54 そんな馬鹿は最初からC++なんて使うな。
JavaかC#使っておけ
JavaかC#使っておけ
328デフォルトの名無しさん
2009/09/07(月) 02:33:08 なんでこんなに必死なのかな?
スマートポインタに意義があると困っちゃう人って、どんな人だろう?
スマートポインタに意義があると困っちゃう人って、どんな人だろう?
329デフォルトの名無しさん
2009/09/07(月) 12:05:36330デフォルトの名無しさん
2009/09/08(火) 01:17:17 10年ぶりに触ったが、すっかり忘れてる。
テンプレート周りのコンパイルエラーが全然、理解できない。
関数からローカル変数の参照返して、例外起こしちゃうし…
受け側でコピーコンストラクタ用意しておけば大丈夫って思ってたけど、
一時変数とごっちゃになっていたらしい。
しばらくリハビリが必要そうだ…
テンプレート周りのコンパイルエラーが全然、理解できない。
関数からローカル変数の参照返して、例外起こしちゃうし…
受け側でコピーコンストラクタ用意しておけば大丈夫って思ってたけど、
一時変数とごっちゃになっていたらしい。
しばらくリハビリが必要そうだ…
331デフォルトの名無しさん
2009/09/08(火) 14:09:58 テンプレート絡みのエラーメッセージが意味不明なのはしょーがない。
332デフォルトの名無しさん
2009/09/08(火) 18:55:53 ま さ に 肥 大 化
333デフォルトの名無しさん
2009/09/11(金) 08:58:46 権限と責任はセットで与えられて然るべきものである
よって責任を負えない素人や才無き者はC++に触れてはならない
よって責任を負えない素人や才無き者はC++に触れてはならない
334デフォルトの名無しさん
2009/11/24(火) 06:17:01 消去法でC++って人は多いんじゃないの?
ネイティヴコンパイルで他にいい言語って何よ?
ネイティヴコンパイルで他にいい言語って何よ?
335デフォルトの名無しさん
2009/11/24(火) 07:33:36 D言語
Objective-C
Object Pascal
Objective-C
Object Pascal
336デフォルトの名無しさん
2009/11/24(火) 07:37:33 やっぱりどれもぱっとしないな
337デフォルトの名無しさん
2009/11/27(金) 13:27:25 いずれすべてC#に統合されると港では言われてるけど本当なの?(´・ω・`)
338デフォルトの名無しさん
2009/11/27(金) 13:56:24 >>337
頭の悪い巷があったもんだ。
頭の悪い巷があったもんだ。
339デフォルトの名無しさん
2009/11/27(金) 14:35:51 Native C# か Native VB が出ればC++は捨てていい。
D言語ってまだ話題になってるのか?
D言語ってまだ話題になってるのか?
340デフォルトの名無しさん
2009/11/27(金) 15:01:06 Kコンパイラなら・・・
341デフォルトの名無しさん
2009/11/27(金) 15:51:58342デフォルトの名無しさん
2009/11/27(金) 15:59:21 GCC+C言語、C++が無いと
Linuxの世界じゃ生きていけない
Linuxの世界じゃ生きていけない
343デフォルトの名無しさん
2009/11/27(金) 16:04:59344デフォルトの名無しさん
2009/11/27(金) 18:51:06 おまえらがんばって落とし穴のないスマポ作ってくれ
345デフォルトの名無しさん
2009/11/27(金) 22:57:58 ただメジャーになってくれないと解説本とかが充実しないからちっとも広まらないぞ。
346デフォルトの名無しさん
2010/01/03(日) 23:05:36 これからの時代は Go! だ
347デフォルトの名無しさん
2010/02/08(月) 18:31:42 0が偽でそれ以外が真とか気持ち悪すぎ
348デフォルトの名無しさん
2010/02/08(月) 18:48:25 なんで?
0と3が偽とかのほうが気持ち悪くないか?
0と3が偽とかのほうが気持ち悪くないか?
349デフォルトの名無しさん
2010/02/09(火) 07:15:14 真偽値はtrue/falseだけにしてくれ、数値まで真偽値扱いするなということでしょ。
自分もある程度はそう思うから、if (i)ではなくif (i == 0)って書く、iが数値型なら。
自分もある程度はそう思うから、if (i)ではなくif (i == 0)って書く、iが数値型なら。
350デフォルトの名無しさん
2010/02/09(火) 20:26:59 Cが生まれた時代にはCにとっては実に合理的だったと思うけど
CPUにとってのゼロの意味も偽だし
CPUにとってのゼロの意味も偽だし
351デフォルトの名無しさん
2010/02/10(水) 00:47:34 だいたい筋肉脳アメリカ人がつくったものはどれも大味すぎる
352デフォルトの名無しさん
2010/02/10(水) 00:49:05 普通にboolのある言語を先に学んだ人には
C/C++のif()は気持ち悪いんだわ
C/C++のif()は気持ち悪いんだわ
353デフォルトの名無しさん
2010/02/10(水) 01:57:40 でっていう
354デフォルトの名無しさん
2010/02/10(水) 10:55:08 気持ち悪いなら
他人の作成したソースコードを読まなければよい
他人の作成したソースコードを読まなければよい
355デフォルトの名無しさん
2010/02/10(水) 11:11:32 整数型を真偽値に変換するときに0以外を真
真偽型を整数値に変換するときに真が1で偽が0
ポインタ型を真偽値に変換するときにヌル以外を真
とすると決まっているだけで
C++のboolもCの暗黙の真偽型も真と偽の二つの値しかとらない
暗黙の型変換が気持ち悪いのは同意
真偽型を整数値に変換するときに真が1で偽が0
ポインタ型を真偽値に変換するときにヌル以外を真
とすると決まっているだけで
C++のboolもCの暗黙の真偽型も真と偽の二つの値しかとらない
暗黙の型変換が気持ち悪いのは同意
356デフォルトの名無しさん
2010/02/13(土) 12:50:54 boolのある言語から入ったけど、Cの真偽の判定は
リーズナブルだと思う
特に p をポインタとして if(p) という書き方は美しくて好き
リーズナブルだと思う
特に p をポインタとして if(p) という書き方は美しくて好き
357デフォルトの名無しさん
2010/02/13(土) 13:11:56 lintっていうツールがあってだな
まぁ、美しいのは認めるが
まぁ、美しいのは認めるが
358デフォルトの名無しさん
2011/02/22(火) 01:30:29.74359デフォルトの名無しさん
2011/03/10(木) 21:57:17.96 0かそれ以外で真偽を判定するのは
cだからじゃなくてマシン語がそうだからじゃないの?
cだからじゃなくてマシン語がそうだからじゃないの?
360デフォルトの名無しさん
2011/03/23(水) 14:19:34.90 もともと仕様がそうなった理由は実装の都合かもしれないが、
実装依存じゃなくて現に言語仕様で決まっている以上は「Cだから」だ
実装依存じゃなくて現に言語仕様で決まっている以上は「Cだから」だ
361デフォルトの名無しさん
2011/04/30(土) 23:00:53.65 そもそも、ZEROは数じゃないってことじゃないの?
例えば
ここに、「りんご」が0個あります
この「りんご」は「りんご」ですか?
って事
例えば
ここに、「りんご」が0個あります
この「りんご」は「りんご」ですか?
って事
362デフォルトの名無しさん
2011/05/01(日) 11:21:22.49 >>356
ぼくも(´・ω・`)
ぼくも(´・ω・`)
363デフォルトの名無しさん
2011/09/19(月) 21:36:37.12 349のifでわざわざ0と比較しちゃう書き方はアセンブリ見ると無駄が増えてたと思う(vc)
油断は禁物だ
油断は禁物だ
364デフォルトの名無しさん
2011/09/19(月) 22:33:00.57 >>363
普通は最適化で全く同じ扱いになるもんだが。
普通は最適化で全く同じ扱いになるもんだが。
365デフォルトの名無しさん
2011/11/20(日) 11:24:50.79 なるもんだがだよね
366デフォルトの名無しさん
2011/11/20(日) 12:06:59.90 C++関連スレの多くが2008年キックオフか...。 当時は活気があったんだろうな。 ここ2年ぐらいで凋落の坂を下ったというわけか?
367デフォルトの名無しさん
2011/11/20(日) 12:10:00.68 C++11でnullptrが新設されたから0の問題は解決しただろ
368デフォルトの名無しさん
2011/11/21(月) 12:29:57.89 >>366
2ch全体がね。
2ch全体がね。
369デフォルトの名無しさん
2011/11/24(木) 06:31:17.12 凋落してるのは2chの方だな
370デフォルトの名無しさん
2011/12/07(水) 19:09:09.79自身が聞いた情報によると、もうじき中国はバブルがはじけて昔の貧乏な中国に戻るんだぜ
もう経済は破綻してて、取り戻すのは無理なんだそうだな
その世界ではやたら有名な政府関係者筋から聞いた確かな情報だな
まあお前ら頭の良い連中には、今さらなくらいのネタだ、
お前らからすればもう常識的なくらいの知識だろうぜ
371プログラマ
2011/12/11(日) 00:27:36.40 イテレータなんかを使うとポインタを上手く手なずけてる快感があるな。
C++にはまり込むと廃人になりそうだ。
複雑さの背景には機械の不条理さを手なずけるための工夫があるんだな。
C++にはまり込むと廃人になりそうだ。
複雑さの背景には機械の不条理さを手なずけるための工夫があるんだな。
372デフォルトの名無しさん
2011/12/21(水) 19:31:18.55 C++11はAutoがやっと来てくれたなって感じ
373デフォルトの名無しさん
2012/09/13(木) 23:24:13.58 foreachはまだ使えないの?
374デフォルトの名無しさん
2012/09/15(土) 03:51:36.83 君が決断すれば使えるよ
375デフォルトの名無しさん
2012/10/20(土) 10:37:35.37376デフォルトの名無しさん
2012/12/22(土) 14:28:33.52 template <int N> struct Factorial {
enum { value = N * Factorial<N - 1>::value };
};
template <> struct Factorial<0> {
enum { value = 1 };
};
enum { value = N * Factorial<N - 1>::value };
};
template <> struct Factorial<0> {
enum { value = 1 };
};
377デフォルトの名無しさん
2013/01/07(月) 20:24:22.43 >>373
int a[] = {1, 2, 3};
for (int x : a)
{
std::cout << x << std::endl;
}
名称はrange-based for文。
もうVC++でもg++でも使える。
int a[] = {1, 2, 3};
for (int x : a)
{
std::cout << x << std::endl;
}
名称はrange-based for文。
もうVC++でもg++でも使える。
378デフォルトの名無しさん
2013/01/08(火) 00:22:13.20 質問した人だけど
ありがとう
VC++2008じゃだめっぽい
ありがとう
VC++2008じゃだめっぽい
379デフォルトの名無しさん
2013/01/13(日) 12:28:49.72 Cから離れるほど存在意義を失う。
380デフォルトの名無しさん
2013/01/22(火) 07:20:56.78 凋落(ちょうらく)
381デフォルトの名無しさん
2013/01/27(日) 00:55:46.83 C++はクラスと仮想関数の実装でやめておけば良い言語だった
ガベージコレクションを持たず、デストラクタが必要なこと自体は否定しない
しかしその状態で例外を実装したのが言語として終わった
ガベージコレクションを持たず、デストラクタが必要なこと自体は否定しない
しかしその状態で例外を実装したのが言語として終わった
382デフォルトの名無しさん
2013/01/27(日) 01:12:57.06 >>381
例外の何が問題なの?
例外の何が問題なの?
383デフォルトの名無しさん
2013/01/27(日) 13:56:47.20 template も問題
boost みたいなまともな標準クラスライブラリが無かったのも問題
boost みたいなまともな標準クラスライブラリが無かったのも問題
384デフォルトの名無しさん
2013/01/27(日) 14:05:20.67 STL は無視でつか?
385デフォルトの名無しさん
2013/01/27(日) 14:12:11.24 WTL / ATL はともかく STL のどこがまともなんだよ!
386デフォルトの名無しさん
2013/01/27(日) 15:02:28.62 >>383
標準とかいわれなければ覚えようとしないダメな子なんですね、よくわかります
標準とかいわれなければ覚えようとしないダメな子なんですね、よくわかります
387デフォルトの名無しさん
2013/01/27(日) 15:12:44.77 >>383
「〜が問題」とかじゃなくてさ、技術的な問題点を具体的に挙げようよ。
「〜が問題」とかじゃなくてさ、技術的な問題点を具体的に挙げようよ。
388デフォルトの名無しさん
2013/01/27(日) 19:42:42.06 デストラクタがあるからこそ例外が生きるんじゃないか
389デフォルトの名無しさん
2013/01/27(日) 19:45:32.78 RAIIでつね
確かに確かに
確かに確かに
390デフォルトの名無しさん
2013/01/27(日) 21:06:21.32 GCもデストラクタもなしで例外導入されたらそれこそ問題w
何も分かっちゃいねえ
何も分かっちゃいねえ
391デフォルトの名無しさん
2013/01/31(木) 00:58:02.79 例外実装したのならfinalyは必須
try〜catchの仕様もウンコだし、C++は欠陥言語と言わざるを得ない
try〜catchの仕様もウンコだし、C++は欠陥言語と言わざるを得ない
392デフォルトの名無しさん
2013/02/08(金) 22:11:55.64 RAIIラッパーを書くのは確かにだるい。
スコープガードの技法で楽にはなったけど、
なんか直感的じゃないようなそうでもないような。
まあ、いまさらほしい機能でもないや>finally
スコープガードの技法で楽にはなったけど、
なんか直感的じゃないようなそうでもないような。
まあ、いまさらほしい機能でもないや>finally
393デフォルトの名無しさん
2013/02/09(土) 00:56:55.93 デストラクタがあればfinallyなんて大体不要
394デフォルトの名無しさん
2013/02/10(日) 15:17:36.54 デストラクタのない欠陥言語だと
finallyの中にグダグダと泥臭い記述をするんだよ
finallyの中にグダグダと泥臭い記述をするんだよ
395デフォルトの名無しさん
2013/02/17(日) 02:42:48.81 例外キャッチもせず、関数の初めでnew、終わりでdelete、
しかもnewの戻り値がNULLでないかチェックしてるアホコードを書く
C上がりの低脳PGが未だに大勢いる
当然メモリリーク起きまくりでまともに動きゃしないが、書いた当人は
「おかしい、ちゃんとnewとdeleteは対にしてるしエラーチェックもしてるのに」
とか言いながらトンチンカンなデバッグを何日もやっている
C++がなまじCの知識だけでもそこそこ書けてしまうせいで
大量の地雷コードが作られてしまった
しかもnewの戻り値がNULLでないかチェックしてるアホコードを書く
C上がりの低脳PGが未だに大勢いる
当然メモリリーク起きまくりでまともに動きゃしないが、書いた当人は
「おかしい、ちゃんとnewとdeleteは対にしてるしエラーチェックもしてるのに」
とか言いながらトンチンカンなデバッグを何日もやっている
C++がなまじCの知識だけでもそこそこ書けてしまうせいで
大量の地雷コードが作られてしまった
396デフォルトの名無しさん
2013/02/17(日) 07:28:14.81 Hoge *h = NULL;
h = new Hoge;
if(!h) return 0;
...
delete h;
return 1;
なら例外拾わなくても安全
h = new Hoge;
if(!h) return 0;
...
delete h;
return 1;
なら例外拾わなくても安全
397デフォルトの名無しさん
2013/02/17(日) 09:04:56.88 >>396
えっ?
えっ?
398デフォルトの名無しさん
2013/02/17(日) 10:13:42.47 >>396で問題になるケースってなんだ
operator newがbad_alloc以外を投げる場合とか?
operator newがbad_alloc以外を投げる場合とか?
399デフォルトの名無しさん
2013/02/17(日) 10:45:27.23 new(nothrow)で押し通すのも一つの哲学
400デフォルトの名無しさん
2013/02/17(日) 13:12:42.21 >>398
…の所で何らかの例外が発生した時
…の所で何らかの例外が発生した時
401デフォルトの名無しさん
2013/02/17(日) 13:17:11.48 >>400
なるほど・・・
なるほど・・・
402デフォルトの名無しさん
2013/02/21(木) 14:05:41.50 スマポ行っとけ
403デフォルトの名無しさん
2013/03/21(木) 00:47:13.41 メモリリークの危険があるからC++は駄目という主張は多いが、それくらいカバーできないで
プログラマ名乗るのもおこがましいのでは?
プログラマ名乗るのもおこがましいのでは?
404デフォルトの名無しさん
2013/03/21(木) 00:52:47.38405デフォルトの名無しさん
2013/03/21(木) 00:57:46.67 技術屋としてはC++を使いこなしたいと思わんかねえ
406デフォルトの名無しさん
2013/03/21(木) 01:05:12.01 立場によって意見も異なるって事でしょ。
結果として、要求を満たすモノを作れれば、個人のスキルなんか気にしないし、言語なんかなおさら何でも良いのが会社。
結果として、要求を満たすモノを作れれば、個人のスキルなんか気にしないし、言語なんかなおさら何でも良いのが会社。
407デフォルトの名無しさん
2013/03/21(木) 01:12:40.59 ただ動きゃいいソフトとパフォーマンスが必要なソフトがある。
つか技術者の技術力が無くなったら国力低下だぞ
つか技術者の技術力が無くなったら国力低下だぞ
408デフォルトの名無しさん
2013/03/21(木) 01:30:25.08 だから、要件を満たせばって言ってるでしょ。
何で、ただ動くソフトとパフォーマンスが必用なソフトが引き合いになるんだよ。
パフォーマンスが要件にあるなら、当然満たす必要があるわけだが、それは技術力とは関係無い。
結果が出せるかどうか、それが全て。
何で、ただ動くソフトとパフォーマンスが必用なソフトが引き合いになるんだよ。
パフォーマンスが要件にあるなら、当然満たす必要があるわけだが、それは技術力とは関係無い。
結果が出せるかどうか、それが全て。
409デフォルトの名無しさん
2013/03/21(木) 02:14:32.57 まあ、結果をだせるやつが技術力のあるやつとも言えるよな
結果も出せないで、技術力云々言うやつは論外だが、結構多いので困る
結果も出せないで、技術力云々言うやつは論外だが、結構多いので困る
410デフォルトの名無しさん
2013/03/21(木) 05:34:58.94 >>407
もう手遅れ
もう手遅れ
411デフォルトの名無しさん
2013/12/28(土) 12:30:30.67 ぬるぽ
412デフォルトの名無しさん
2013/12/28(土) 12:50:24.50 技術力w
こんなものバズワード以外のなんだ?
こんなものバズワード以外のなんだ?
413デフォルトの名無しさん
2013/12/28(土) 12:52:42.81 >>405
中二病の高校生か大学生ぐらいのもん
中二病の高校生か大学生ぐらいのもん
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- こども家庭庁、2026年から“独身税”を開始、年収200万なら年4200円、年収400万なら年7800円 ★2 [お断り★]
- 山里亮太、フィリピンに子ども食堂を建設 「偽善者」「日本の子どもを助けるべき」の声があっても活動を続ける理由 [Anonymous★]
- 【芸能】粗品 「間違ったお笑いの常識が放送されている」「テレビ見てる素人って、笑い声でしか面白いかどうか判断できない。可哀想」 [冬月記者★]
- 【BBC】サッカー 滋賀県初!レイラック滋賀 悲願のJ3昇格決定 [鉄チーズ烏★]
- 日本の英語力96位から動かず AI評価で可視化された「読めるが話せない」の正体 (EF EPI 2025) [少考さん★]
- 住民「注意するのも怖い…」アルミ缶等の持ち去り禁止条例施行へ 異論唱える“持ち去る側”の事情「おまんま食えない」 名古屋市 [少考さん★]
- 嫌儲公認アニメ『ℂ 𝕀 𝕋 𝕐』 じわ売れヒットしてしまう [966599176]
- 感動巨編『ヴァイオレット・エヴァーガーデン』はなぜ過小評価されてるのか? [966599176]
- デフレ、円高👈こいつが叩かれた理由 [943688309]
- ワイの好きなアニメがシュタインズゲート、魔法少女まどかマギカ、ガールズ&パンツァーなんやが
- 【悲報】ココナッツサブレ、なぜか売り切れ続出する🤔 [733893279]
- 政治家「こうみょうじの皆さん、清き一票を!」弘明寺地元民「こいつには入れない」 [369521721]
