[表示 : 全て 最新50 1-99 101- 201- 2chのread.cgiへ]
Update time : 05/10 01:09 / Filesize : 46 KB / Number-of Response : 242
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【信者】C++の問題点【アンチ】



1 名前:デフォルトの名無しさん mailto:sage [2008/10/10(金) 09:13:53 ]
C++の問題点について語るスレです

C++ってなんであんなに肥大化しちゃったの?
pc11.2ch.net/test/read.cgi/tech/1219902495/

190 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 11:53:20 ]
>>189
Cは低級言語だから別にいいんだよw

191 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 12:23:05 ]
>>190
'C++'の'C'部分に独自の拡張を加えちゃ駄目じゃん


192 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 12:37:38 ]
C言語は高級言語だろ・・・
抽象化水準が低いから中級言語って言う奴はいたけど。

193 名前:デフォルトの名無しさん mailto:sage [2008/11/02(日) 12:54:55 ]
>>189
C99なら嘆かわしいことに出来てしまう

まあ、あんなものC言語じゃないけどな

194 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 19:11:25 ]
演算子のオーバーロードはヤバイと
ム半年目の頃に既に俺は思ってたね
関数の引数が参照渡しなのもヤバイ

195 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 21:30:24 ]
演算子多重定義関数での引数と言えば、const参照が相場だろ。
2行目が値渡しでないからやばいと言っているのであればそれは違う。

196 名前:デフォルトの名無しさん mailto:sage [2008/11/03(月) 22:35:07 ]
const参照渡しが安全だと思ってるアホ発見

197 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 00:23:34 ]
Cに++した程度の言語だ
やばくて当たり前だっての

オブジェクト指向アセンブラに何処まで求めてるんだ?


198 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 00:39:19 ]
本当に C に ++ してくれたのなら、どんなに良かった事か…
本当の意味で C with Class だったら更に良かったんだがな

残念言語



199 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 02:52:09 ]
>>192
お前その発言がどんだけ化石か自覚してるのか?

200 名前:デフォルトの名無しさん mailto:sage [2008/11/04(火) 09:33:16 ]
C++の++は良く分からん物でオーバーロードされてるだろ

201 名前:デフォルトの名無しさん mailto:sage [2008/11/05(水) 18:03:54 ]
もしかしたら実際の処理は--かもしれない

202 名前:デフォルトの名無しさん mailto:sage [2008/11/05(水) 18:33:56 ]
そしてC++の仕様上、それを知る事は不可能に近い

203 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 16:48:48 ]
>194-196のやりとりがよくわかりません。
演算子定義をconst参照で受けて、さらに注意しなければいけないことって何?

204 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 18:08:29 ]
多分、>>196 にしか解らない深い理由があるんだろう。

205 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 19:33:21 ]
const_cast

206 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 20:24:16 ]
それくらいでびくついているようではC++なんて使えないけどな。
全くもってそこらじゅう罠だらけだもん。

207 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 21:22:36 ]
・constなんてconst_castや普通のキャストで誰でも簡単に外せる
・constを外さなくたってmutableメンバがあれば変更し放題
・deleteに対してconstは全く無力

何かを安全にするつもりでconstを使ってるなら、それは時間の無駄です
constは何も守ってくれません

208 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 21:45:34 ]
const_cast は使うこと自体が有害だと思われ



209 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 21:46:39 ]
気休めにしかならないと分かっていても、すがりたくなる。
ほかに信じられるものなんて何もないから。

210 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 21:51:57 ]
setの要素を変更する時にconst_castは不可欠です

211 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 21:58:17 ]
あれってconst付いていたっけ?

212 名前:デフォルトの名無しさん mailto:sage [2008/11/06(木) 22:04:48 ]
setの要素を直接変更したらまともに動作しないぞ
removeしてからinsertしないと

213 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 02:46:00 ]
EffectiveSTLの22番だな

214 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 03:43:36 ]
比較関数が見ないメンバであれば問題ない。

215 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 09:35:55 ]
const_castなんてC++の問題ではなく、C++を利用するプログラマの問題だろ

216 名前:204 mailto:sage [2008/11/07(金) 12:14:46 ]
>>207
やっぱりそういう話か。下らん。

217 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 16:23:46 ]
で、外注先のプログラマに問題が無い事は誰が保障してくれるんだ?
言語側で保障してりゃ良いだけの事を、本当に非効率的な言語(笑)だわ。

218 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 17:01:39 ]
問題のあるプログラマを雇っている外注なんぞ切ってしまえ




219 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 17:05:50 ]
また始まった
ぼくはそんなつかいかたしないからC++はわるくないんだい!!

なんか本気で言ってそうでかわいそうになる

220 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 17:29:08 ]
何のためにconst_castがあるのかも考えず、不用意に使うような奴を擁護する事の方が信じられん
きっと、大阪の轢き逃げみたいな事件を起こすような奴に違いない

221 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 17:53:25 ]
はいはい、今度は論点のすり替えですね
フルコースですか
次のメニューをお願いします

222 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 17:54:41 ]
レッテル張りも消化済みでしたね
引き続きどうぞ

223 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 18:12:17 ]
そもそも、言語側で保障する方が非効率だから、保障しなかったのにね

224 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 20:36:53 ]
const_castはどう考えても内容を変更しないのになぜか非定数を要求するAPIのためのもの。

Motifやってた頃はお世話になりました。

225 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 20:59:11 ]
const版・非const版で多重定義するときにも使える。
const char* strchr(const char* s, int c);
inline char* strchr(char* s, int c)
{
const char* t = s;
return const_cast<char*>(strchr(t, c));
}
Cのstrchrより型安全性が増しているという不思議。もっともCとの互換性は無くなったが。

226 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 23:36:09 ]
アホな事する奴がconst_castなんて律儀に書くわけないという

227 名前:デフォルトの名無しさん mailto:sage [2008/11/07(金) 23:42:36 ]
そういうアホは自分に影響が無い程度に放っておけばいいんです。

228 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 18:01:46 ]
どうしてSTLってstd::の中に全部ぶち込んでるの?
整理とか出来ない人が作ったの?



229 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 18:40:10 ]
とりあえず、グローバルに全部散らばっているよりは遥かにましです。

230 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 19:11:13 ]
STLは十分整理されているからそれで困ったことはないよ。
名前空間はいろんな人たちが集まって何かを作るときの応急処置ぐらいに思っておいた方がいいよ。
boostは移行中or統合中とかがあって、一応名前空間で区別してるけど
using使い出すともうカオスになるよね。

231 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 22:32:08 ]
>>228
あなたならどう整理する?

232 名前:デフォルトの名無しさん mailto:sage [2008/11/08(土) 23:17:56 ]
.NETみたいに

233 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 02:10:38 ]
名前空間も罠の塊だからあんまり多いと困る

234 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 16:31:19 ]
>>233
using namespaceとか使うから罠に嵌るんじゃないのか?

235 名前:デフォルトの名無しさん mailto:sage [2008/11/09(日) 17:00:09 ]
そんなもん使わなくったって落とし穴はいくらでもあるよ
C++にはKoenig Lookupという素敵な仕組みがあるから

236 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 08:50:37 ]
signed と unsigned の比較くらいできるようにしてくれっつーの!
ヽ(`Д´)ノ

237 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 12:49:34 ]
signed廃止しようぜ
負の数なんてなくても平気

238 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 14:23:58 ]
>>226
そういう奴はふつー、Cスタイルのキャスト (万能) 使うよなあ。



239 名前:デフォルトの名無しさん mailto:sage [2008/11/10(月) 23:39:57 ]
>>237
そしてsigned_intクラスを作るんでしょ。

240 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 03:31:15 ]
暗黙の変換がなくなるだけでも上等。

241 名前:デフォルトの名無しさん mailto:sage [2008/11/11(火) 10:36:41 ]
分の悪い取引だな






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<46KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef