Linus「C++プログラマはウンコ。寄ってくるな」
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2009/01/24(土) 13:32:25> 1. C++ じゃなくてただの C を使ってる。理由は謎。移植性が
> どうとか言わないで、
> そんなのウソに決まってるから。
*あんた* のほうこそ大ウソつきだ。
C++ はひどい言語だ。これは、多くの平均以下のプログラマーが
使ってるためにさらに輪をかけてゲロゲロになっていて、どうし
ようもないゴミが簡単に生産されるようになってる。正直いって、
C を選ぶ理由が C++ プログラマーを追っぱらうため *だけ* だっ
たとしても、それ自体、C を使う強力な理由になりうる。
Linus Torvalds
http://tabesugi.net/memo/2009/1a.html#152154
0002デフォルトの名無しさん
2009/01/24(土) 13:33:140003デフォルトの名無しさん
2009/01/24(土) 13:35:120004デフォルトの名無しさん
2009/01/24(土) 13:37:270005デフォルトの名無しさん
2009/01/24(土) 13:40:03言語訓練のために立てたものです。
アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。
京都大学霊長類研究所
0006デフォルトの名無しさん
2009/01/24(土) 13:42:36C++好きのやつは、初心者のころの素直な気持ちを思い出して欲しい。
0007デフォルトの名無しさん
2009/01/24(土) 13:44:15C++ 使いこなせる奴自体が少ないというのが C++ の大きな問題だということに。
0008デフォルトの名無しさん
2009/01/24(土) 13:54:59いまいち発言に説得力はないんだよね。論理的でもないし。
0009デフォルトの名無しさん
2009/01/24(土) 14:09:03Ubuntuです。
思いやりです。
0010デフォルトの名無しさん
2009/01/24(土) 14:10:57C++はオブジェクト指向言語だが?
0011デフォルトの名無しさん
2009/01/24(土) 14:14:00感化される権威に弱い日本人って…
せいぜい現場の親方どまりのLinusが
Bjarneに劣等感いだきまくりなのが見え見えでなんとも…
ちなみに俺はLinusがFedora使いだと知った時点であんまり信用できんな、と思いはじめた。
0012デフォルトの名無しさん
2009/01/24(土) 14:14:42クラスベースのオブジェクト指向言語なんて、オブジェクト指向
じゃないし。言語仕様がコロコロ変わり過ぎる。しかも互換性無し。
C++はゲロゲロのウンコ。C++マは、ウンコにたかる蝿に過ぎない。
0013デフォルトの名無しさん
2009/01/24(土) 14:15:06うんうん。そうだね。
0014デフォルトの名無しさん
2009/01/24(土) 14:16:090015デフォルトの名無しさん
2009/01/24(土) 14:18:19まだ居るんだこういう人・・・
0016デフォルトの名無しさん
2009/01/24(土) 14:18:470017デフォルトの名無しさん
2009/01/24(土) 14:19:540018デフォルトの名無しさん
2009/01/24(土) 14:20:260019デフォルトの名無しさん
2009/01/24(土) 14:20:350020デフォルトの名無しさん
2009/01/24(土) 14:42:22こともあるんだよなあ。いちおう、便利なところは便利だわC++。
世の中の「cわかります」と「C++わかります」って言ってる奴のほとんどがわかってない、
というのは同意。
002120
2009/01/24(土) 14:45:300022デフォルトの名無しさん
2009/01/24(土) 14:53:53あとやっぱりテンプレートも欲しい。
そしたら C でもいい。
あとやっぱ無名 union も欲しい。
C++ に無いけど関数ない関数もくれ(0xのラムダは却下)。
STL 相当のも欲しいけど、Boost みたいな何かができることを期待する。
0023デフォルトの名無しさん
2009/01/24(土) 14:54:240024デフォルトの名無しさん
2009/01/24(土) 14:56:510025デフォルトの名無しさん
2009/01/24(土) 15:09:03複数人で開発するときに理解度が違いすぎて使えない。
とはいっても、ネームスペースとテンプレートが欲しい。
しょうがないから、いろいろな方法で同じようなことしているけどね。
0026デフォルトの名無しさん
2009/01/24(土) 15:11:40常識で考えても非常識で考えても。
0027デフォルトの名無しさん
2009/01/24(土) 15:22:10成果物の質はプロジェクトのメンバーの最底辺に揃えられる。
0028デフォルトの名無しさん
2009/01/24(土) 15:26:110029デフォルトの名無しさん
2009/01/24(土) 15:30:41C++は間違いなくオブジェクト指向言語だよ。
0030デフォルトの名無しさん
2009/01/24(土) 15:31:160031デフォルトの名無しさん
2009/01/24(土) 15:53:04Linusが何千人もの(自称含めた)開発者を相手にしていることを忘れるなよ・・・
>>29
> 「カッコいい」と勘違いしてる奴がいるな。
あー、中二病っていうんですかね。
0032デフォルトの名無しさん
2009/01/24(土) 15:54:10>「カッコいい」と勘違いしてる奴がいるな
俺がお前に抱いた感想そのもの
0033デフォルトの名無しさん
2009/01/24(土) 16:01:40Google Chrome
OpenOffice
これらはLinusのいう「ひどい言語」で作られています。ゲロゲロです。
0034デフォルトの名無しさん
2009/01/24(土) 16:03:34Firefox以外はゲロゲロではあるが。
0035デフォルトの名無しさん
2009/01/24(土) 16:22:26ちょっと待ってくれよ。
C と比べての話だろ?
C++ の方がコンパイル時エラー検出に役立つ仕様が多いだろ?
試しに例を挙げてくれよ。
0036デフォルトの名無しさん
2009/01/24(土) 16:27:32その辺、整理したほうがよくない?
C++使いは普通Cも出来るからバイリンガルなわけで
用途に合せて使いわければいいでは?
0037デフォルトの名無しさん
2009/01/24(土) 16:31:34まあそうだな。
Cだと走らせてみないとわからないようなバグが、C++だとコンパイル時にわかったりする。
C++の方が便利なのは確かだろう。後発だし。
ただし、ここでは、「便利なのを使うと素人がたかって来るからやむを得ず避ける」という話だから、
言語と人とを分けて考えるのがちと難しい。
0038デフォルトの名無しさん
2009/01/24(土) 16:37:56実際的かもしれんが非生産的というかかっこわるいな。
C++が幅広すぎてノウハウ統一がしにくいなら
規約体系作ったりすればいいのに。
Linusってやっぱりギーク的ネガティブ思考なのかな。
こう、イメージとは違って
フロンティア精神みたいなものとはかけ離れてるな。
まあ実際、Linus製ソフトってGitとかLinuxとか
基本的にカイゼンモデルで開拓系といよりは職人系なんだけど。
0039デフォルトの名無しさん
2009/01/24(土) 16:58:43Firefoxもかなりゲロい
GNOMEもコンポーネント化できずにwebkitへ行った
0040デフォルトの名無しさん
2009/01/24(土) 16:59:36確かにゲロゲロだわ。Chromeは知らんが、
FirefoxもOOoも全てソースから、ちとマイナー環境で
buildしようと試みるとウンコ踏みまくりだった。
コンパイラやライブラリの些細なバージョン違いに
まで依存し過ぎ。
0041デフォルトの名無しさん
2009/01/24(土) 17:02:45OOoはビルドにディスク空き10GB以上必要なんだよね…なにそれ?w
0042デフォルトの名無しさん
2009/01/24(土) 17:03:03「Minixはゴミ」
「OSXはウンコ」
「Gccはどんどんゴミになっていく」
「GNOMEはナチス」
「SVNは信じられないゴミ」
これにC++が加わっただけ。
0043デフォルトの名無しさん
2009/01/24(土) 17:04:17出来上がったのがゲロだったと、そういう事ですか?
0044デフォルトの名無しさん
2009/01/24(土) 17:07:22それでもゲロゲロなんか
linuxががゲロゲロだと困るからね
0045デフォルトの名無しさん
2009/01/24(土) 17:17:020046デフォルトの名無しさん
2009/01/24(土) 17:30:56もいきー!→もんきー!→猿→西遊記→ドラゴンボール→悟空→最強
45 名前:デフォルトの名無しさん :2009/01/24(土) 17:17:02
C++使う奴はよって来るな!最強!
46 名前:デフォルトの名無しさん :2009/01/24(土) 17:17:02
ありがとう。
0047デフォルトの名無しさん
2009/01/24(土) 17:32:46C++とC++の言語仕様が糞なのじゃなくて、
1.これを大して理解してない奴
2.そいつがこしらえた糞コード
がウンコっていってんでないか?
シリアルポートたたいたり、デバイスドライバ作ったり、割り込み考えたりするなら、C++はイラン。
0048デフォルトの名無しさん
2009/01/24(土) 17:33:000049デフォルトの名無しさん
2009/01/24(土) 17:37:03手抜きしないで時間も少し変えろよw
コピペ修正ミスのバグだなw
C++ が具合悪いことは認めるが、型チェックが強力なだけで C よりマシ。
C++ コンパイラでエラーが出たソースを却下するとか、
C++ コンパイラでコンパイルするけど class, template, using, :: が検出されたら却下するとか、
妥協が欲しいところだ。
つーかトランスレータでいいから、Linus 自身がマトモだと思う言語を作ったらいい。
0050デフォルトの名無しさん
2009/01/24(土) 17:40:38言語が悪いんじゃないって言ってんのに話きかない奴だなおまえは
0051デフォルトの名無しさん
2009/01/24(土) 17:40:40正直、C++ではSTLとboost以外使うコードなんか見つけた日にゃ
rm -rfした挙句、HDD取り出してそれが記録されてた推定位置を
アイスピックでガリガリにして再起不能にし
それを落としたサイトのドメインでパケットフィルタでブロックして
全ブックマークからそのサイトにリンクしてるサイトを削除。
そこまでしないと気がおさまらない。
0052デフォルトの名無しさん
2009/01/24(土) 17:44:200053デフォルトの名無しさん
2009/01/24(土) 17:49:03というか、コンパイラのエラーとか型チェックとかの文句言うなら素直にJavaかC#つかえ。
速度差も結局はJITあるからC++とまったく差はない。
というか、動的にコードの置き換えが起きたりする可変(アスペクト)の研究が進んでるから、
C++で書いたコードと最適化コンパイラが作ったネイティブのコードより逆に速い。
0054デフォルトの名無しさん
2009/01/24(土) 17:50:12整数型のサイズ指定とか、C99仕様頼りになるのもなんか気持ち悪いし。
命名センスが???なのが多すぎるけど。
boost::filesystemなんてなんで再定義強要するような命名するのかわからん…
0055デフォルトの名無しさん
2009/01/24(土) 17:51:40嘘はダメ
0056デフォルトの名無しさん
2009/01/24(土) 17:53:530057デフォルトの名無しさん
2009/01/24(土) 17:55:41何言ってんだ。
ナマの C はヤダって言ってんだ。
0058デフォルトの名無しさん
2009/01/24(土) 17:56:420059デフォルトの名無しさん
2009/01/24(土) 17:57:120060デフォルトの名無しさん
2009/01/24(土) 18:22:290061デフォルトの名無しさん
2009/01/24(土) 18:24:43Cで書けばこういう奴が寄ってこなくなる訳か
こりゃ>>1に賛成せざるを得ないな
0062デフォルトの名無しさん
2009/01/24(土) 18:33:33で、クラスとはそれを専門にしてる誰かが書いてくれる物で自分では書けない、と。
0063デフォルトの名無しさん
2009/01/24(土) 18:37:47毎回 sizeof / sizeof してるコードを見たら
お前もそう思うようになるよ。
0064デフォルトの名無しさん
2009/01/24(土) 18:37:470065デフォルトの名無しさん
2009/01/24(土) 18:38:19C で削除したのが問題だったのだ。
0066デフォルトの名無しさん
2009/01/24(土) 18:42:14いや、最初にひどい言語だって言ってるじゃん。
0067デフォルトの名無しさん
2009/01/24(土) 18:44:14うざいぐらいsizeof/sizeof使うとか、頭悪いの?
0068デフォルトの名無しさん
2009/01/24(土) 18:47:080069デフォルトの名無しさん
2009/01/24(土) 18:49:210070デフォルトの名無しさん
2009/01/24(土) 18:57:510071デフォルトの名無しさん
2009/01/24(土) 19:04:24あちこちでsizeof/sizeofしてるってことは明らかにダメなコードだな。
後で動的配列に切り換えたとたん全部書き直しになるし。
0072デフォルトの名無しさん
2009/01/24(土) 19:06:260073デフォルトの名無しさん
2009/01/24(土) 19:06:28いや、普通先頭アドレスとサイズを渡すだろw
0074デフォルトの名無しさん
2009/01/24(土) 19:14:20mallocはsizeof(要素の型) * 要素の数
でやって、あとは先頭と要素の数を持ち回る。
sizeof(配列)/sizeof(要素の型)で配列の要素数なんて、
学生の書くコードだよ。
プロがやったらちょっとそれはw
って感じ
あと//のコメントもCでやると素人臭いな。
VCSにコミットするまでに//のコメは消しとけよって感じ
0075デフォルトの名無しさん
2009/01/24(土) 19:15:19CはともかくC++の場合マクロで用意されてたら怒るけど。つvector
0076デフォルトの名無しさん
2009/01/24(土) 19:16:46プロ
プロ
VCS
VCS
VCS
0077デフォルトの名無しさん
2009/01/24(土) 19:19:500078デフォルトの名無しさん
2009/01/24(土) 19:22:000079デフォルトの名無しさん
2009/01/24(土) 19:36:19>>73
sizeof/sizeofで固定長の配列の要素数を得るコードをいっぱい書くなと言いたかったんだけどなぁ。
>>74
sizeof(配列の識別子)/sizeof(配列の識別子[0])の方がいいと思う。
古い人間だからかもしれないけど//は使わないなぁ。/* */と#if 0 #endif使っている。
0080デフォルトの名無しさん
2009/01/24(土) 19:45:04/*
//の方が便利じゃん。
*/
#endif
0081デフォルトの名無しさん
2009/01/24(土) 19:46:040082デフォルトの名無しさん
2009/01/24(土) 19:51:02>#if 0 #endif は頭が固すぎるな
イマドキはどう書くんだい?
0083デフォルトの名無しさん
2009/01/24(土) 19:53:29/* */ しか使わん。今時コメントバイナリに埋め込む馬鹿コンパイラなんて使わんし。
0084デフォルトの名無しさん
2009/01/24(土) 19:53:32/// <summary>
/// いまどき
/// </summary>
/// <param name="val"></param>
/// <returns></returns>
public int func(int val)
{
}
0085デフォルトの名無しさん
2009/01/24(土) 19:58:12いまどきの人はコメントを含むコードもコメントで囲むのかね?
0086デフォルトの名無しさん
2009/01/24(土) 20:01:520087デフォルトの名無しさん
2009/01/24(土) 20:02:03なんか困る?
0088デフォルトの名無しさん
2009/01/24(土) 20:03:19どこが困るのかわからん奴はVBで遊んでろ
Cに近づくな
0089デフォルトの名無しさん
2009/01/24(土) 20:07:260090デフォルトの名無しさん
2009/01/24(土) 20:09:13おまえのスキルが低すぎて気づかないだけだ
0091デフォルトの名無しさん
2009/01/24(土) 20:10:240092デフォルトの名無しさん
2009/01/24(土) 20:23:02お前は全ての配列を vector で動的に確保するというのか
0093デフォルトの名無しさん
2009/01/24(土) 20:26:29実力のある人だけが、C言語でプログラミングして、実力のない人は、さっさと他の言語にいってくれよ。
そうしないと、じじいの目からビームがでるよ。
ネストコメントだと思うけど、いまだに入らないんだ。
自作言語で/+ +/をネスト可コメントにしたこともあった。
//(スラリコメントと名前つけている)は、C99からだからC89でもコンパイルが通るように使わないことにしている。
0094デフォルトの名無しさん
2009/01/24(土) 20:28:430095デフォルトの名無しさん
2009/01/24(土) 20:31:100096デフォルトの名無しさん
2009/01/24(土) 20:32:26>動的配列のサイズを取得する
0097デフォルトの名無しさん
2009/01/24(土) 20:34:140098デフォルトの名無しさん
2009/01/24(土) 20:35:55あんたと同類みたいな人も居るみたいなのに「どいつもこいつもバカ」とは適当すぎやしないか?
0099デフォルトの名無しさん
2009/01/24(土) 20:39:04動的配列に対しては配列数を取得するマクロなんて何ら意味が無いだろw
0100デフォルトの名無しさん
2009/01/24(土) 20:40:570101デフォルトの名無しさん
2009/01/24(土) 20:42:020102デフォルトの名無しさん
2009/01/24(土) 20:43:20そりゃねーわ。
0103デフォルトの名無しさん
2009/01/24(土) 20:43:290104デフォルトの名無しさん
2009/01/24(土) 20:47:550105デフォルトの名無しさん
2009/01/24(土) 20:58:110106デフォルトの名無しさん
2009/01/24(土) 21:03:37C でもまともなコードは書けない
0107デフォルトの名無しさん
2009/01/24(土) 21:12:170108デフォルトの名無しさん
2009/01/24(土) 21:12:36ということは、C++ではまともなコードが書けない
といっているリーヌスはCでもまともなコードを書いてないと。
リーヌス涙目w
0109デフォルトの名無しさん
2009/01/24(土) 21:15:44こういう奴は言語を問わずまともなコードは書けない。
0110デフォルトの名無しさん
2009/01/24(土) 22:21:59機能がいっぱい付いてるのは知ってる
その全てが複雑な動作と無駄なオーバーヘッドと不可解なバグの発生に貢献してるのも知ってる
0111デフォルトの名無しさん
2009/01/24(土) 22:27:090112デフォルトの名無しさん
2009/01/24(土) 22:33:12Cの構造体を関数に渡して処理させるより速いぞ。
仮想関数だって結局関数ポインタなりswitchなりに変更しても
オーバーヘッドは極端に変わらん。
0113デフォルトの名無しさん
2009/01/24(土) 22:34:16C++プログラマがリソースの管理が出来ないのはデストラクタに頼りすぎだからだろうし
コンストラクタは罠の塊だろ
死んだ方がいい
0114デフォルトの名無しさん
2009/01/24(土) 22:34:530115デフォルトの名無しさん
2009/01/24(土) 22:34:58演算子オーバーロードは絶対使っちゃダメだな。
継承?仮想関数?そういうのも無視、無視。
0116デフォルトの名無しさん
2009/01/24(土) 22:35:26C++には糞のような機能もすばらしい機能も山ほど付いているから、それらを取捨選択する能力が必要
0117デフォルトの名無しさん
2009/01/24(土) 22:37:39そのことにC++コミュニティもようやく気付き始めてコンポジション(笑)を推奨し始めてる
結局Cで遙か昔からやってきたことに戻ってきた
0118デフォルトの名無しさん
2009/01/24(土) 22:37:40C++は例外があるから
デストラクタなしにはまともにリソース管理できないんだよ。
0119デフォルトの名無しさん
2009/01/24(土) 22:56:14C++は静的型があるから
継承なしにはまともにポリモーフィズムできないんだよ。
0120デフォルトの名無しさん
2009/01/24(土) 23:00:36RUBY最高
これマジ
0121デフォルトの名無しさん
2009/01/24(土) 23:10:390122デフォルトの名無しさん
2009/01/24(土) 23:29:07そんなことよりyahooきっず「どんな''ジャンボ''が食べたい?」に投票しようぜwwwwwwwww
ジャンボピーマンを一位にして餓鬼共を泣かせようwwwwwwwwww
現在1位 yahooの工作開始までに2位のたこ焼きを突き放す
http://kids.yahoo.co.jp/ _人人人人人_
>鶴職人募集中<
 ̄ Y^Y^^Y^Y^ ̄
↓本スレ
http://takeshima.2ch.net/test/read.cgi/news4vip/1232801214/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
0123デフォルトの名無しさん
2009/01/25(日) 00:11:010124デフォルトの名無しさん
2009/01/25(日) 00:14:050125デフォルトの名無しさん
2009/01/25(日) 00:14:59RTTI周りはちょっとは強化されたんだろうか。
0126デフォルトの名無しさん
2009/01/25(日) 00:32:070127デフォルトの名無しさん
2009/01/25(日) 00:51:29コンソールからCGIからGUIまで汎用性&実用性最高水準で書ける言語なんてこれぐらい。
0128デフォルトの名無しさん
2009/01/25(日) 01:13:50若干、器用貧乏な気もする。
>>117
相変わらず継承を推しまくるJavaなんかよりはましだ。
0129デフォルトの名無しさん
2009/01/25(日) 02:45:340130デフォルトの名無しさん
2009/01/25(日) 03:48:38あながち、OS論争の時もnetnewsでやってたし、2chの技術系板のさきがけみたいな
気はしないでもないな。
0131デフォルトの名無しさん
2009/01/25(日) 06:04:57継承が悪なら、基本ライブラリはなんで継承使いまくってるの?
0132デフォルトの名無しさん
2009/01/25(日) 06:31:16標準ライブラリを作っていた頃はよく分かっていなかった。
localeまわりのグダグダとかauto_ptrとかもそのせい。
0133デフォルトの名無しさん
2009/01/25(日) 06:38:33いや、Javaやsmalltalk、LL言語でも継承使いまくってるじゃん
それに最近出来てるライブラリも継承使いまくってるじゃん?こういうのも悪なの?
0134デフォルトの名無しさん
2009/01/25(日) 07:21:52芸能事務所解雇と同時に事務所所有のマンションを追い出されたりして。
いつ自分もそうなるかわからないし、そうなったらかわいそうだよな。
0135デフォルトの名無しさん
2009/01/25(日) 07:31:52積んだと考えたほうが合理的だろうな。
0136デフォルトの名無しさん
2009/01/25(日) 07:35:12などと思ったものだが、写メ見て幻滅した記憶がある。
ただのヲタじゃん。
0137デフォルトの名無しさん
2009/01/25(日) 08:59:540138デフォルトの名無しさん
2009/01/25(日) 09:02:360139デフォルトの名無しさん
2009/01/25(日) 09:07:04C++&COMでドライバ作るわけだが
0140デフォルトの名無しさん
2009/01/25(日) 09:32:33実際マイクロカーネルはクソだったじゃん
0141デフォルトの名無しさん
2009/01/25(日) 09:33:480143デフォルトの名無しさん
2009/01/25(日) 09:43:47何の技術も持ってない奴よりも俺の年収の方が低いなんて・・情けないよな・・・
0144デフォルトの名無しさん
2009/01/25(日) 09:47:35ヒント: 需要と供給
0145デフォルトの名無しさん
2009/01/25(日) 10:04:19何の能力も無いまま広告代理店だの株屋だのに勤めてる奴らは俺らより年収高いぞ。
歴史に残る天才が貧乏だったケースは無数にある。
年収=能力じゃないんだよ。
俺らはポインタも配列も怖くない、メモリリークなんていうバカなバグは出さない、
そこらの駆け出しプログラマとは格段にレベルが違う、その矜持だけでいいじゃないか。
0146デフォルトの名無しさん
2009/01/25(日) 10:31:39C以上の罠てんこもり言語だし
0147デフォルトの名無しさん
2009/01/25(日) 11:26:59自分の理解してる機能だけ使えばいいのにな。
>>143
日本のプログラマは給料安くてやってられね。
使える友人増やして、会社起こすしかないよ。
0148デフォルトの名無しさん
2009/01/25(日) 11:27:210149デフォルトの名無しさん
2009/01/25(日) 11:34:150150デフォルトの名無しさん
2009/01/25(日) 12:00:44金を得るという技術が無いだけでしょ?
金が欲しいならそっちの技術も磨けばいいじゃん。
0151デフォルトの名無しさん
2009/01/25(日) 12:05:540152デフォルトの名無しさん
2009/01/25(日) 12:40:22麻薬だよ本当。
0153デフォルトの名無しさん
2009/01/25(日) 12:44:560154デフォルトの名無しさん
2009/01/25(日) 12:59:340155デフォルトの名無しさん
2009/01/25(日) 13:06:38どこの部分が悪いか言える?
0156デフォルトの名無しさん
2009/01/25(日) 13:06:45そっちの技術に興味がないけど金は欲しい
…ってのが大半なんだよな。エンジニアって…
0157デフォルトの名無しさん
2009/01/25(日) 13:12:360158デフォルトの名無しさん
2009/01/25(日) 13:14:02構文が汚い
0159デフォルトの名無しさん
2009/01/25(日) 13:40:200160デフォルトの名無しさん
2009/01/25(日) 13:41:140161デフォルトの名無しさん
2009/01/25(日) 13:45:070162デフォルトの名無しさん
2009/01/25(日) 13:47:08int main(void) {
int stl = 0;
int boost = 0;
printf("%d, %d\n", stl, boost);
return 0;
}
0163デフォルトの名無しさん
2009/01/25(日) 14:26:24普通はLL言語つかってほうがいいわ。
0164デフォルトの名無しさん
2009/01/25(日) 14:47:35見てると頭痛が痛くなってくる。
0165デフォルトの名無しさん
2009/01/25(日) 14:49:570166デフォルトの名無しさん
2009/01/25(日) 14:51:300167デフォルトの名無しさん
2009/01/25(日) 14:54:32LLかLW言語と言えってことだろ。
0168デフォルトの名無しさん
2009/01/25(日) 14:57:08いちいち突っ込み入れて話を中断させる奴って小物ばっかりなんだよな。
0169デフォルトの名無しさん
2009/01/25(日) 14:59:58しなくていいな
0170デフォルトの名無しさん
2009/01/25(日) 15:01:080171デフォルトの名無しさん
2009/01/25(日) 15:02:190172デフォルトの名無しさん
2009/01/25(日) 15:16:56それはお前が大物と話す機会のある立場に居なくて、
且つしょっちゅう言葉を間違えて突っ込まれる人生送ってるだけだろ。
0173デフォルトの名無しさん
2009/01/25(日) 15:17:560174デフォルトの名無しさん
2009/01/25(日) 15:26:35脊髄反射乙
0175デフォルトの名無しさん
2009/01/25(日) 15:26:40Boost.Preprocessorは使えると思う。
0176デフォルトの名無しさん
2009/01/25(日) 15:59:530177デフォルトの名無しさん
2009/01/25(日) 16:08:010178デフォルトの名無しさん
2009/01/25(日) 16:22:380179デフォルトの名無しさん
2009/01/25(日) 16:47:560180デフォルトの名無しさん
2009/01/25(日) 19:01:560181デフォルトの名無しさん
2009/01/25(日) 19:08:20・Linuxは世界で唯一成功したといえる非商用OS
・gitはRCSのなかで一番快適
・C++製アプリは規模だけでかくて質の悪いものが多い
(採用実績はあっても成果実績が伴なっていない)
0182デフォルトの名無しさん
2009/01/25(日) 19:22:30> ・gitはRCSのなかで一番快適
ほんとかね?
試してみようかね。
> ・C++製アプリは規模だけでかくて質の悪いものが多い
てめこの、ゲーム屋なめんな。
0183デフォルトの名無しさん
2009/01/25(日) 19:37:58LLで書いても十分って気もするけど。
0184デフォルトの名無しさん
2009/01/25(日) 20:32:32>>33
確かに
0185デフォルトの名無しさん
2009/01/25(日) 23:09:30そもそもC++で書いてると、無駄に規模が大きく成ってしまう
気がする。言語版Multicsの再失敗だな。
0186デフォルトの名無しさん
2009/01/25(日) 23:37:51C++もCも大して変わらない。
結局、
作法が統一されてるC++で書いたほうが楽でスマート。
0187デフォルトの名無しさん
2009/01/25(日) 23:45:39COOLがC++かわらないって、それはないだろ。
0188デフォルトの名無しさん
2009/01/25(日) 23:47:55self にした方が良い
0189デフォルトの名無しさん
2009/01/25(日) 23:56:100190デフォルトの名無しさん
2009/01/26(月) 00:01:32HSP最強、ということになりかねない流れだな。
0191デフォルトの名無しさん
2009/01/26(月) 00:03:05初心者歓迎!なんてやってる会社が多いのが問題。
そう言う所で育ったPGはひどいことになる。
0192デフォルトの名無しさん
2009/01/26(月) 00:31:320193デフォルトの名無しさん
2009/01/26(月) 03:28:06をやると、どんだけ酷い目に遭わされるか知ってると、C++への感慨も
変わってくると思う。
0194デフォルトの名無しさん
2009/01/26(月) 11:25:070195デフォルトの名無しさん
2009/01/26(月) 11:28:25status/1148031371
0196デフォルトの名無しさん
2009/01/26(月) 14:18:360197デフォルトの名無しさん
2009/01/26(月) 14:57:280198デフォルトの名無しさん
2009/01/26(月) 15:13:24あるある!!!
0199デフォルトの名無しさん
2009/01/26(月) 15:16:28言語仕様が硬直的でまともにイベントディスパッチできねぇし。
0200デフォルトの名無しさん
2009/01/26(月) 15:19:11ゲーム開発以外はもう全部Cでいいよ。
0201デフォルトの名無しさん
2009/01/26(月) 17:30:250202デフォルトの名無しさん
2009/01/26(月) 17:41:06ノシ
「こんないーもんあるじゃねーか!C++使わせろよ!」
と思った。
0203デフォルトの名無しさん
2009/01/26(月) 20:05:32マフィアなどが横行する裏の世界では、発見されるとまずい遺体を硫酸プールに
沈めて溶かし、証拠を消すなどという噂話がありますが、実際に科学薬品で遺体を
処理したことがあるという人が警察に捕まったそうです。
詳細は以下から。
BBC NEWS | Americas | Mexico man 'dissolved 300 bodies'
メキシコ警察に逮捕された男・Santiago Mezaは通称「シチュー・メーカー」。Mezaは
薬を扱うギャングのために、対立するギャングの遺体を週600ドル(約5万円)の
賃金で苛性ソーダを使って処理したとのこと。処理した遺体は300人にもなるそうです。
10年以上遺体処理を続け「何の感情もなかった」と話すMeza
Mezaは犠牲者の遺族と話す機会があるならば「謝罪したい」と述べています。
アメリカとの境界に位置する都市ティフアナでは、ドラッグを巡る争いで700人以上の
死者が出ており、メキシコ軍はMezaの言っている話は真実であると考えているそうです。
ブラック・ラグーンに出てくる始末屋ソーヤーのような人物ですね……。
http://gigazine.net/index.php?/news/comments/20090126_dissolve_300_bodies/
0204デフォルトの名無しさん
2009/01/26(月) 20:08:13>科学薬品
・・・
0205デフォルトの名無しさん
2009/01/26(月) 22:06:26http://twitter.com/finalfusion/status/1148902866
http://twitter.com/cpp_akira/status/1148906759
http://twitter.com/finalfusion/status/1148913004
http://twitter.com/cpp_akira/status/1148916130
http://twitter.com/wraith13/status/1148916782
http://twitter.com/cpp_akira/status/1148921926
http://twitter.com/wraith13/status/1148931187
http://twitter.com/wraith13/status/1148932048
0206デフォルトの名無しさん
2009/01/26(月) 22:24:43自分らは陰口を書くのはOKってスタンスなんだから、同じ土俵にたてとか、2chどうこう言うなって感じだよなぁ。
しかも>>194とか、ほぼスルーされてるのに。
まあ、どうでもいいけど。
0207デフォルトの名無しさん
2009/01/26(月) 22:28:28かまってちゃんを相手にするなよ・・・
0208デフォルトの名無しさん
2009/01/27(火) 04:18:33いつまでたってもフリーソフターが育たずにWinに遅れをとるんだよ…
0209デフォルトの名無しさん
2009/01/27(火) 06:14:06GNUの概念と真っ向から反するからそりゃね
0210デフォルトの名無しさん
2009/01/27(火) 06:22:58HSPってwww
0211デフォルトの名無しさん
2009/01/27(火) 06:23:15「どうでもいい」ことを一々嫌みったらしく書き残していく>>206もかまってちゃんだから、
相手にしないほうがいいよ。
0212デフォルトの名無しさん
2009/01/27(火) 08:58:320213デフォルトの名無しさん
2009/01/27(火) 09:10:44もっと視野を広げろよ
0214デフォルトの名無しさん
2009/01/27(火) 12:27:36ずっと金になるというのはあるな
まぁ誰かは損してるわけだが
0215デフォルトの名無しさん
2009/01/27(火) 15:00:060216デフォルトの名無しさん
2009/01/27(火) 21:11:250217デフォルトの名無しさん
2009/01/27(火) 21:39:150218デフォルトの名無しさん
2009/01/27(火) 21:41:14はてな村やtw村での生活が長いと
ああいう勘違いしちゃうのかねえ
回り見えてないねえ
0219デフォルトの名無しさん
2009/01/27(火) 21:59:57perl(のようなもの)とか、shスクプリトとか。
0220デフォルトの名無しさん
2009/01/27(火) 22:16:17XtとかMotif触ったことないけど、kernelのファイルシステムや
ネットワークプロトコルスタック程度の使い方なら、Cのオブジェクト指向
っぽいプログラミングで十分だと思う。
逆にC++みたいなレイヤを一つはさむと、逆アセンブルしたコードが
Cに比べるとわけわかめなんで、panicしたとき調査しずらい。
0221デフォルトの名無しさん
2009/01/27(火) 22:20:18それは、入力受け付けるのにコールバック関数を必要とするOSに、
薄いフレームワークをかぶせてるからであって、言語のせいではないと思われ。
0222デフォルトの名無しさん
2009/01/27(火) 22:41:53自分でスレをtwに晒しておいて、自分のtwの発言が2chに晒されると「同じ土俵に立て」とか頭おかしいな。
0223デフォルトの名無しさん
2009/01/27(火) 22:43:02なに、バールのようなものだと?
0224デフォルトの名無しさん
2009/01/28(水) 00:26:42XmToggleButtonGadgetGetState()なんて関数名見たら、それだけでC++使いたくならない?w
0225デフォルトの名無しさん
2009/01/28(水) 00:52:05一目ですべて分かる。
0226デフォルトの名無しさん
2009/01/28(水) 02:03:370227デフォルトの名無しさん
2009/01/28(水) 10:59:47しかも Gadget と Widget で関数名違うしな。
で、なんかの派生クラス作ろうとしたら
vtable 自分で管理しなきゃいけなくて、益々C++ が欲しくなる。
0228デフォルトの名無しさん
2009/01/28(水) 11:02:25× vtable
○ クラス構造体の関数ポインタ
0229デフォルトの名無しさん
2009/01/28(水) 11:11:41C++はオブジェクトシステムの違いを吸収できない、と
0230デフォルトの名無しさん
2009/01/28(水) 12:19:59C++ってdelegateはどうやって実現してるの?
0231デフォルトの名無しさん
2009/01/28(水) 12:32:24ttp://hp.vector.co.jp/authors/VA000092/jokes/strup.html
0232デフォルトの名無しさん
2009/01/28(水) 13:15:280233デフォルトの名無しさん
2009/01/28(水) 16:45:220234デフォルトの名無しさん
2009/01/28(水) 17:06:33C#的なdelegateなら、適当なオブジェクトを受け渡し、
そのオブジェクトの特定のメンバ関数(典型的にはoperator ()という名前の関数)を呼ぶという取り決めでやり取りする。
ようするにダックタイピングが最近の流れ。
昔からある奴だと、仮想関数使ったりマクロで振り分けたりというのが根強い。
0235デフォルトの名無しさん
2009/01/28(水) 18:16:260236デフォルトの名無しさん
2009/01/28(水) 18:25:33Windowsだとコールバック関数にこちらから1つ値を渡せるから、
そこにオブジェクトへのポインタを仕込めるのでマップの出番は無いんだけど、ほかはそうでもない?
0237デフォルトの名無しさん
2009/01/28(水) 23:13:04オブジェクトへのポインタと、メンバ関数へのポインタでもできるかと。
ちなみにメンバ関数ポインタと言うのはこーいうの。
// メンバ関数ポインタ
void (CHoge::*pFunc)() = CHoge::func;
// .* 演算子でのアクセス
(obj.*pFunc)();
// ->* 演算子でのアクセス
(pObj->*pFunc)();
.* と ->* は . や -> と別の演算子として扱われ、
個別にオーバーライド可能ってのもポイント。
0238デフォルトの名無しさん
2009/01/28(水) 23:29:28そういやBoostにはSignalsなんてのもある。
0239デフォルトの名無しさん
2009/01/29(木) 06:13:11>>1でそのboostもstlも一緒に馬鹿されてる
0240デフォルトの名無しさん
2009/01/29(木) 06:58:29どうしてそこまでしてC++を使おうとするのか分からない
0241デフォルトの名無しさん
2009/01/29(木) 09:47:150242デフォルトの名無しさん
2009/01/29(木) 12:32:52ていうかSTLを使わないC++はかなりウンコ。それならCでキレイに書いたほうがいい。
0243デフォルトの名無しさん
2009/01/29(木) 12:54:28後発の言語で、iostreamをパクったのって有るのか?
0244デフォルトの名無しさん
2009/01/29(木) 12:57:36取り繕おうとしてしまうケースがしばしば見られる気がする
マクロはウンコ
0245デフォルトの名無しさん
2009/01/29(木) 13:05:34Cは貧弱で、
プロジェクトで作ったライブラリは顧客の所有物となれば、次のプロジェクトで流用できない。
別々のプロジェクトから集まったチームのためにvectorやらなんやら設計しなおすのもバカらしい。
0246デフォルトの名無しさん
2009/01/29(木) 13:05:40みんながみんな開発効率重視の使い捨てPGじゃない。
とりあえずC++の設計と進化くらいは流し読みしとけ。
0247デフォルトの名無しさん
2009/01/29(木) 13:09:57あれは酷い。
0248デフォルトの名無しさん
2009/01/29(木) 13:22:54iostream系だけは使ってない。
0249デフォルトの名無しさん
2009/01/29(木) 13:46:15標準ライブラリとして紛れ込んでるのは、たぶん、事務処理ミス。
0250デフォルトの名無しさん
2009/01/29(木) 14:16:48何でもかんでもtemplateで無理やりやろうとするところがバカっぽい。
0251デフォルトの名無しさん
2009/01/29(木) 14:17:080252デフォルトの名無しさん
2009/01/29(木) 14:36:50ちょっと前に出版されたC++ Cording Standardsには
なるべく継承はヤメれ、friendもほどほどにねみたいに書かれてる。
0253デフォルトの名無しさん
2009/01/29(木) 15:38:350254デフォルトの名無しさん
2009/01/29(木) 15:44:55オブシコの真髄はコンポジットにこそある、
とC++触りはじめて3日ぐらいで気付いたっけなあ。
これぐらいのセンスがないとC++はむずかしいね。
0255デフォルトの名無しさん
2009/01/29(木) 20:51:36でも、C++面白いんだよね、純粋に。
0256デフォルトの名無しさん
2009/01/29(木) 21:18:30C++のコンパイラの方が
なんか速そうな感じがする。
0257デフォルトの名無しさん
2009/01/29(木) 21:18:57っていう感じで、3歩下がって2歩進むことばかりに見える
0258デフォルトの名無しさん
2009/01/29(木) 21:20:50販促チラシ
0259デフォルトの名無しさん
2009/01/29(木) 21:53:53javaとc#でなんか同じような名前のがあったような。
0260デフォルトの名無しさん
2009/01/29(木) 21:55:54どっちも演算子で入出力なんてやらないよ。
0261デフォルトの名無しさん
2009/01/29(木) 22:05:200262デフォルトの名無しさん
2009/01/29(木) 23:32:320263デフォルトの名無しさん
2009/01/29(木) 23:35:26boost なしで
0264デフォルトの名無しさん
2009/01/30(金) 00:11:28scanf系のアドレス渡しとかフォーマットミスが嫌われた要因の一つだろうから
in系はともかくとしても。
あと、Cが文字列型を持たないのを引きずって、文字列の扱いが中途半端だったね。
もちろん、C++がAT&Tで生まれた直後から多数の「文字列class」が生まれてしまったのも原因だけど
「静的なstring」を用意することが出来ない。
だから、f(const string&)を呼び出すときにf("abc")とすると
毎回コンストラクタとデストラクタが呼ばれるってのもどうもね。
char*をやめて全部stringにしろといわれても、外部やAPIとのやりとりではそうも行かず。
0265デフォルトの名無しさん
2009/01/30(金) 00:14:230266デフォルトの名無しさん
2009/01/30(金) 00:28:330267デフォルトの名無しさん
2009/01/30(金) 00:31:570268デフォルトの名無しさん
2009/01/30(金) 00:33:34型安全にする事は可能だからな。
ostream は今からでもそれをサポートすべき。
0269デフォルトの名無しさん
2009/01/30(金) 00:47:23結果としてprintfの優秀さが再認識されて今多くの言語でサポートされて使えること
これらがiostreamの惨めな失敗によるものなのだとしたら
あの糞ライブラリにも意味があるのかもしれない
0270デフォルトの名無しさん
2009/01/30(金) 00:50:53不遜なC#がprintf()様に微妙に反抗してます。
0271デフォルトの名無しさん
2009/01/30(金) 01:04:00iostreamのようにprintfへの挑戦者ではないだろう
0272デフォルトの名無しさん
2009/01/30(金) 01:14:59scanf対istreamならどっこいどっこいだと思う
0273デフォルトの名無しさん
2009/01/30(金) 01:57:02そのクラスだと独自マクロ作ってC++なんかドライバ扱いなのが普通だと思ってたが。
0274デフォルトの名無しさん
2009/01/30(金) 02:14:130275デフォルトの名無しさん
2009/01/30(金) 02:25:51http://www.gnu.org/fun/jokes/helloworld.html
0276デフォルトの名無しさん
2009/01/30(金) 06:07:10Seasoned Hacker
% cc -o a.out ~/src/misc/hw/hw.c
% a.out
Hello, world.
ワロタw
0277デフォルトの名無しさん
2009/01/30(金) 11:52:04手抜きしてそう
0278デフォルトの名無しさん
2009/01/30(金) 12:17:230279デフォルトの名無しさん
2009/01/30(金) 12:33:57C++がLALRでないからじゃなかったっけ
0280デフォルトの名無しさん
2009/01/30(金) 14:50:45テンプレートの実体化とかオブジェクト(vtable)のレイアウトを決定するのに時間がかかりそう
0281デフォルトの名無しさん
2009/01/30(金) 14:55:29医者挿入四苦八苦、多苦労後無事挿入。
然教授苦笑曰新人、「汝挿入場所相違也」。
医者赤面至急欲除、尿管微動不得取外。
医者必死謝罪患者、然患者喜々誤挿入。
教官不思議聞患者、曰「快感多旦那以上」。
0282デフォルトの名無しさん
2009/01/30(金) 16:44:44なんか妙に納得。
昔のGoogleは素気ないがCoolだったな。
いまじゃすっかりチンドン屋になってしまったが。
0283デフォルトの名無しさん
2009/01/30(金) 16:48:51ヤホーほどじゃない。
0284デフォルトの名無しさん
2009/01/30(金) 17:13:340285デフォルトの名無しさん
2009/01/30(金) 17:18:46世の中の機器からチンドン屋になっちゃったんだから、
チンドン言語で書くのが効率的じゃね?
0286デフォルトの名無しさん
2009/01/30(金) 17:23:11http://codezine.jp/article/detail/3370
0287デフォルトの名無しさん
2009/01/30(金) 20:35:43pass:pgtwit
0288デフォルトの名無しさん
2009/01/31(土) 00:58:57デフォルト引数も関数の多態性もないせいで
ライブラリの関数とかで無駄な引数いっぱい…
不使用の引数でもわざわざダミー変数用意しなきゃならん。
Xlibとかめんどい。
0289デフォルトの名無しさん
2009/01/31(土) 01:32:050290デフォルトの名無しさん
2009/01/31(土) 01:55:34君はC++にも不適格だと思うぞ
0291デフォルトの名無しさん
2009/01/31(土) 01:59:440292デフォルトの名無しさん
2009/01/31(土) 02:08:28言語仕様がクズを生みやすいってことだと思う
0293デフォルトの名無しさん
2009/01/31(土) 02:09:490294デフォルトの名無しさん
2009/01/31(土) 08:41:24君は「C++の設計と進化」を読んだ方がいい
0295デフォルトの名無しさん
2009/01/31(土) 10:31:180296デフォルトの名無しさん
2009/01/31(土) 10:35:09kwsk
まさか、ソースコードの一番上で宣言するような言語があるのか?
0297デフォルトの名無しさん
2009/01/31(土) 10:42:02int a;
float b;
void* c;
{
return a+(int)b+(int)*c;
}
0298デフォルトの名無しさん
2009/01/31(土) 11:05:15ヒント: スコープ
0299デフォルトの名無しさん
2009/01/31(土) 11:12:19なにこれ、釣り?
AT&Tでは、そんな書き方できたんだ、知らなかったなぁ。
>>void* c;
>>{
>> return a+(int)b+(int)*c;
参考になりますた。C言語を使いこなせない人は、ここに立ち入り禁止ね。
C++を使う人も来ないでください。気持ちが悪いです。
0300デフォルトの名無しさん
2009/01/31(土) 11:19:03お前が来なきゃいい。
0301デフォルトの名無しさん
2009/01/31(土) 11:30:050302デフォルトの名無しさん
2009/01/31(土) 11:31:580303デフォルトの名無しさん
2009/01/31(土) 11:35:150304デフォルトの名無しさん
2009/01/31(土) 13:11:160305デフォルトの名無しさん
2009/01/31(土) 13:12:480306デフォルトの名無しさん
2009/01/31(土) 13:12:520307デフォルトの名無しさん
2009/01/31(土) 14:07:160308デフォルトの名無しさん
2009/01/31(土) 15:14:07C++ の作者にセンスがなかったと言わざるを得ない。
作者が元凶であった以上、C++ は元々消えていく運命にあったのだね。
0309デフォルトの名無しさん
2009/01/31(土) 15:18:410310デフォルトの名無しさん
2009/01/31(土) 15:30:20そういう問題でもない。
0311デフォルトの名無しさん
2009/01/31(土) 15:43:46>printf っぽいものでも
>型安全にする事は可能だからな。
どんなふうにすればいいの?
0312デフォルトの名無しさん
2009/01/31(土) 15:46:55>逆にC++みたいなレイヤを一つはさむと、逆アセンブルしたコードが
>Cに比べるとわけわかめなんで、panicしたとき調査しずらい。
わざわざご自分の無能をおさらしにならなくとも
よろしいのに。
0313デフォルトの名無しさん
2009/01/31(土) 15:47:31printf("%(int) %(float) %(MyClass)\n", i, f, c);
0314デフォルトの名無しさん
2009/01/31(土) 15:57:040315デフォルトの名無しさん
2009/01/31(土) 16:02:55どっちも糞
0316デフォルトの名無しさん
2009/01/31(土) 16:07:05こうなってはもうHSPしかないのか……
0317デフォルトの名無しさん
2009/01/31(土) 16:09:110318デフォルトの名無しさん
2009/01/31(土) 16:13:030319デフォルトの名無しさん
2009/01/31(土) 16:14:530320デフォルトの名無しさん
2009/01/31(土) 16:17:54std::coutで特に記述が簡素化したとも思えないんだけど。
何を思ってこんなもん作ったんだ?
0321デフォルトの名無しさん
2009/01/31(土) 16:23:330322デフォルトの名無しさん
2009/01/31(土) 16:26:47long longが%I64dか%lldかで悩む必要なく、doubleに%lfを使うコードを見てうんざりする必要がなくなった。
ただ、それを実現したいだけなら、Javaみたいにprint(x)でいいわけなんだけど。
0323デフォルトの名無しさん
2009/01/31(土) 16:44:22結構活気ありますねw
0324デフォルトの名無しさん
2009/01/31(土) 16:46:130325デフォルトの名無しさん
2009/01/31(土) 16:47:02可変長引数を間違えるうんこを、救済したかったんだろ。
案の定あらゆる所で漏らしまくる、うんこ野郎が集まってきたとw
メモリの管理も出来ないゴミを前提にしてるし仕方ないさ
0326デフォルトの名無しさん
2009/01/31(土) 16:50:340327デフォルトの名無しさん
2009/01/31(土) 17:06:12オブジェクト指向のデモ的な側面があったんだろうね
「ほら、オブジェクト側に処理を任せちゃえば、何も考えないですむんですよ」
「なるほど、楽ですね。でも出力幅とか書式指定したくならないですか?」
「実際のプログラミングではそうだろうね」
「そうすると結局手間は変わらない、むしろ面倒になるのでは?」
「ですよね。まあ、こんなことも出来ますよ、というデモですからねー」
0328デフォルトの名無しさん
2009/01/31(土) 17:06:13出来たつもりになってるうんこ君を笑うスレです
0329デフォルトの名無しさん
2009/01/31(土) 17:14:040330デフォルトの名無しさん
2009/01/31(土) 17:44:10新しい入出力ライブラリ作ってさ。
0331デフォルトの名無しさん
2009/01/31(土) 17:53:25これを言うとキャリアの浅いやつや責任持ったことのない奴ほど理解できないんだよな。
ここでこういうこというやつは、よっぽど教育がなされてる環境にでもいるのかな。
0332デフォルトの名無しさん
2009/01/31(土) 17:56:14ここで言っている方は、挫折経験でもあるのだろうし。
0333デフォルトの名無しさん
2009/01/31(土) 18:20:20でもそうならない。
0334デフォルトの名無しさん
2009/01/31(土) 18:26:28指揮能力の問題だろうな。
0335デフォルトの名無しさん
2009/01/31(土) 18:38:18VBでいいって言われるならともかく。
0336デフォルトの名無しさん
2009/01/31(土) 18:48:230337デフォルトの名無しさん
2009/01/31(土) 18:49:590338デフォルトの名無しさん
2009/01/31(土) 18:58:280339デフォルトの名無しさん
2009/01/31(土) 18:59:05http://xmonad.org/
0340デフォルトの名無しさん
2009/01/31(土) 19:07:030341デフォルトの名無しさん
2009/01/31(土) 19:15:170342デフォルトの名無しさん
2009/01/31(土) 19:16:240343デフォルトの名無しさん
2009/01/31(土) 19:18:370344デフォルトの名無しさん
2009/01/31(土) 19:20:380345デフォルトの名無しさん
2009/01/31(土) 19:25:570346デフォルトの名無しさん
2009/01/31(土) 19:30:310347デフォルトの名無しさん
2009/01/31(土) 19:34:45コードも動作も抽象化されて修復不可能になるんだぞ。
0348デフォルトの名無しさん
2009/01/31(土) 19:35:350349デフォルトの名無しさん
2009/01/31(土) 19:50:570350デフォルトの名無しさん
2009/01/31(土) 19:53:230351デフォルトの名無しさん
2009/01/31(土) 20:03:25入門書を曲解して謎のコードを大量生産。
0352デフォルトの名無しさん
2009/01/31(土) 20:03:570353デフォルトの名無しさん
2009/01/31(土) 20:17:49誰も使うなとは言ってない。
問題は、C with スクリプト言語か、C++ with スクリプト言語かだ。
0354デフォルトの名無しさん
2009/01/31(土) 20:38:18K&Rですね、わかります
0355デフォルトの名無しさん
2009/01/31(土) 21:11:05機能に溺れて逆にCのほうが抽象化しやすくなってる。
0356デフォルトの名無しさん
2009/01/31(土) 21:20:290357デフォルトの名無しさん
2009/01/31(土) 21:24:23中途半端な抽象化のせいで中身ダダ漏れだけど肝心な所には触れないC++
0358デフォルトの名無しさん
2009/01/31(土) 21:49:380359デフォルトの名無しさん
2009/01/31(土) 21:52:540360デフォルトの名無しさん
2009/01/31(土) 21:58:040361デフォルトの名無しさん
2009/01/31(土) 22:14:59その状態でプログラムに手を出す人がいるが、
プログラム向いてないよと言いたい
0362デフォルトの名無しさん
2009/01/31(土) 22:15:370363デフォルトの名無しさん
2009/01/31(土) 22:44:000364デフォルトの名無しさん
2009/01/31(土) 22:44:390365デフォルトの名無しさん
2009/01/31(土) 23:07:430366デフォルトの名無しさん
2009/01/31(土) 23:39:26むりやりC++で書いた関数プログラミング的なコードを読まされるのだけは勘弁
0367デフォルトの名無しさん
2009/01/31(土) 23:57:26その心は?
C++-<<
おあとがよろしいようで。
0368デフォルトの名無しさん
2009/01/31(土) 23:59:060369デフォルトの名無しさん
2009/02/01(日) 00:10:210370デフォルトの名無しさん
2009/02/01(日) 00:12:15計算機を動かすコードには無いだろうね。
でも俺らが書いてるのは、計算機を動かすコードを生成させるコードだから。
0371デフォルトの名無しさん
2009/02/01(日) 00:18:46計算機を動かすコードはすべて抽象的なもの。
抽象的なコードが具体的な電荷や電気信号に変換されて計算機を動かす。
0372デフォルトの名無しさん
2009/02/01(日) 00:20:45classの宣言と実体を全て.hファイルに記述されてるの見た時、
リアルで('A`)ウヘェーってなった。
3000行超えてるし…誰が管理するんだよ…
0373デフォルトの名無しさん
2009/02/01(日) 00:22:10放置する方が悪い
0374デフォルトの名無しさん
2009/02/01(日) 00:23:170375デフォルトの名無しさん
2009/02/01(日) 00:24:24> 早めにそれはアカンと言えばいいだけだろw
まぁ、初期段階では指摘するチャンスが無かったってこともあるだろう、いろんな事情で。
0376デフォルトの名無しさん
2009/02/01(日) 00:26:000377デフォルトの名無しさん
2009/02/01(日) 00:27:520378デフォルトの名無しさん
2009/02/01(日) 00:27:58メンバを一覧出来ないってことなら、現代的なIDEならそんなのは表示してくれるし
0379デフォルトの名無しさん
2009/02/01(日) 00:28:370380デフォルトの名無しさん
2009/02/01(日) 00:34:170381デフォルトの名無しさん
2009/02/01(日) 00:35:12Javaは動的解決だけどC++は静的解決って差もわからない奴がC++いじるともう・・・
0382デフォルトの名無しさん
2009/02/01(日) 00:47:59例外はBoostの水準のテンプレートライブラリだが、そんなの自分では書かないしね。
0383デフォルトの名無しさん
2009/02/01(日) 00:51:360384デフォルトの名無しさん
2009/02/01(日) 00:51:51クラス内に全部記述したので問題ない。
(static メンバ変数の実体定義だけはクラス外に書く必要があるが)
0385デフォルトの名無しさん
2009/02/01(日) 00:52:590386デフォルトの名無しさん
2009/02/01(日) 00:54:330387デフォルトの名無しさん
2009/02/01(日) 00:55:15家に帰ったらC++やりますって偽装でもない限り。
0388デフォルトの名無しさん
2009/02/01(日) 00:56:00それは無いな。
0389デフォルトの名無しさん
2009/02/01(日) 00:58:390390デフォルトの名無しさん
2009/02/01(日) 00:59:380391デフォルトの名無しさん
2009/02/01(日) 01:00:12おまえはどんな糞コンパイラつかってんだよ…
0392デフォルトの名無しさん
2009/02/01(日) 01:02:000393デフォルトの名無しさん
2009/02/01(日) 01:02:07Comeau C++ なんて知りません><
0394デフォルトの名無しさん
2009/02/01(日) 01:04:410395デフォルトの名無しさん
2009/02/01(日) 01:05:59return >>394;
}
0396デフォルトの名無しさん
2009/02/01(日) 01:06:300397デフォルトの名無しさん
2009/02/01(日) 01:06:390398デフォルトの名無しさん
2009/02/01(日) 01:08:040399デフォルトの名無しさん
2009/02/01(日) 01:09:470400デフォルトの名無しさん
2009/02/01(日) 01:10:16って、まったくプログラム書かない言語ヲタか何かかな。
0401デフォルトの名無しさん
2009/02/01(日) 01:10:22単純にCもまともに使えないだけなんだが
0402デフォルトの名無しさん
2009/02/01(日) 01:12:170403デフォルトの名無しさん
2009/02/01(日) 01:20:580404デフォルトの名無しさん
2009/02/01(日) 01:21:38とりあえずLinusさんが開発してるカーネルのkernel/sched.cを見た方がいい
0405デフォルトの名無しさん
2009/02/01(日) 01:24:150406デフォルトの名無しさん
2009/02/01(日) 01:24:40>>372の場合、ヘッダに全部書いているのが悪いだけだ。
0407デフォルトの名無しさん
2009/02/01(日) 01:30:56そりゃクソだな
てっきり「Java/C#は宣言も定義も一つのファイルに書くから糞」って言ってるのかと思った
0408デフォルトの名無しさん
2009/02/01(日) 01:31:53正直なのはいいことだよ・・・
0409デフォルトの名無しさん
2009/02/01(日) 01:33:26まぁこうなったら「ジョークが理解されなかった」で押し通すしかないのはわかる。
0410デフォルトの名無しさん
2009/02/01(日) 02:47:06いまどきありえねーって思う。エッチとCは一緒だろ
0411デフォルトの名無しさん
2009/02/01(日) 02:53:11インターフェースと実装を分けるのって大事じゃない?
0412デフォルトの名無しさん
2009/02/01(日) 02:55:07interface が
0413デフォルトの名無しさん
2009/02/01(日) 02:56:42そんなもん当然IDEが全自動でやってくれるだろjk。
……って言えるようになってほしいです。
0414デフォルトの名無しさん
2009/02/01(日) 03:43:120415デフォルトの名無しさん
2009/02/01(日) 08:56:030416デフォルトの名無しさん
2009/02/01(日) 09:13:46--------------------------------------
template <class T> class Hoge{...};
#include "hoge.h.impl"
--------------------------------------
# hoge.h.impl
--------------------------------------
template < class T >
Hoge::Hoge(){...
--------------------------------------
という幹事で、ヘッダの最後にincludeいれて、実装ファイルを読み込ませる方法で
文理させるのが最近の俺の流行り。
0417デフォルトの名無しさん
2009/02/01(日) 09:20:57ヘッダファイルに関数の定義を書き込んじゃうと、多重定義エラーでない?
templateも特化すると多重定義エラーになるし。
0418デフォルトの名無しさん
2009/02/01(日) 09:27:57か
インクルードガードやっとけ
#ifndef foo
#define foo
implementation
#endif /* foo */
0419デフォルトの名無しさん
2009/02/01(日) 09:32:572008の場合、通常のインクルードガードだと
コンパイル単位が違うとエラーが出るんだよね・・・なぜか。
0420デフォルトの名無しさん
2009/02/01(日) 14:36:59上のほうで.hに書く云々って話は、全て、メンバ関数をclass内に書く、という話だと捉えたよ。
少なくとも俺は。
そうすればinline扱いになるし。
まさか「2箇所に書くのが嫌」と言いながら.h内で実装を別途用意するなんて
(相互参照とうでなければ)ありえないしね。
0421デフォルトの名無しさん
2009/02/01(日) 14:41:27リンケージについて勉強した方がいい
0422デフォルトの名無しさん
2009/02/01(日) 14:47:22「C++プログラマはウンコ」呼ばわりされる原因じゃないのか。
0423デフォルトの名無しさん
2009/02/01(日) 14:54:03多重継承とか演算子オーバーロードとか副作用大きい機能とかを
知ってて使うことが上級者への道みたいに煽る。
いい迷惑だ。
0424デフォルトの名無しさん
2009/02/01(日) 15:01:23グローバル変数の実体は1個しか定義できないとか、そういう基本的なことを知らないまま
「C++出来ます」とか言い切るウンコが増えてきているから邪魔なんだよな。
0425デフォルトの名無しさん
2009/02/01(日) 15:01:59プログラミングの話をしているときに「副作用」をそういう意味で使うのは・・・
0426デフォルトの名無しさん
2009/02/01(日) 15:03:56上級者になるのに重要なことだと思うが
0427デフォルトの名無しさん
2009/02/01(日) 15:04:370428デフォルトの名無しさん
2009/02/01(日) 15:05:59コンパイル単位の話も出てきませんでしたよ^^
っていうか、この本のソースコード、
VC++2008じゃコンパイルできないし^^;;;
0429デフォルトの名無しさん
2009/02/01(日) 15:06:28入門書だと、その判断するということを省いているのがまずいのでは?
0430デフォルトの名無しさん
2009/02/01(日) 18:10:06そういうのってリンカの仕事だからな
C/C++の範囲外ということで入門書では避けられてる
そしてあらゆる言語の入門書がそうやって逃げ回る結果
解説してる本がどこにもないという
0431デフォルトの名無しさん
2009/02/01(日) 18:14:41>グローバル変数の実体は1個しか定義できないとか、そういう基本的なこと
C++ Coding Standardにも出てくるけど
そういうことは「一回コンパイルすればわかる」からねぇ。
0432デフォルトの名無しさん
2009/02/01(日) 18:45:28> 上級者になるのに重要なことだと思うが
「入門書」の話ししてるんだけど。
0433デフォルトの名無しさん
2009/02/01(日) 19:13:26他の言語は設計者が数値計算とか3Dとかやらない文系なのがモロバレ
0434デフォルトの名無しさん
2009/02/01(日) 19:26:210435デフォルトの名無しさん
2009/02/01(日) 19:34:08gccだとオプション次第では分からないことも・・・
0436デフォルトの名無しさん
2009/02/01(日) 19:34:11解説してる本は普通にあるよ
0437デフォルトの名無しさん
2009/02/01(日) 20:49:11自由に使わせたら可読性下がるだろあれ。
0438デフォルトの名無しさん
2009/02/01(日) 20:50:430439デフォルトの名無しさん
2009/02/01(日) 20:52:410440デフォルトの名無しさん
2009/02/01(日) 20:54:13自分の中で閉じるなら問題ないかもしれないが自由に触らせるものではないでしょう。
0441デフォルトの名無しさん
2009/02/01(日) 20:54:400442デフォルトの名無しさん
2009/02/01(日) 20:56:440443デフォルトの名無しさん
2009/02/01(日) 20:59:10慣れるとか簡単なことじゃないぞ。
0444デフォルトの名無しさん
2009/02/01(日) 21:08:360445デフォルトの名無しさん
2009/02/01(日) 21:16:23その場合は直感的になるから問題ないよ
0446デフォルトの名無しさん
2009/02/01(日) 21:18:40C++はこういう問題がたくさんある。Javaでなくなったのにはそれなりの理由がある。
0447デフォルトの名無しさん
2009/02/01(日) 21:27:54どうなるかは分からないよ
0448デフォルトの名無しさん
2009/02/01(日) 21:32:45C++ Coding Standard一冊で全部解決。
たった200頁の本だし(ぺらぺら)、
Effective C++やExceptional C++よりはるかに簡単な本だし、
もう必読書ってことで。
0449デフォルトの名無しさん
2009/02/01(日) 21:34:04みんなゲームとかつくらないの? おもしろいよ。
0450デフォルトの名無しさん
2009/02/01(日) 21:35:54つーかレス見る限り個人でしょぼいゲーム作ってる気になってるだけか。
0451デフォルトの名無しさん
2009/02/01(日) 21:36:300452デフォルトの名無しさん
2009/02/01(日) 21:37:270453デフォルトの名無しさん
2009/02/01(日) 22:01:130454デフォルトの名無しさん
2009/02/01(日) 22:02:57それはリスク対策が出来ないプロマネがアホなんだろ
0455デフォルトの名無しさん
2009/02/01(日) 22:02:59みんながまともにプログラム組めるなら、プログラミングなんてコンビニのバイト程度の価値しかなくなる
ほとんどの自称プログラマがカスだからまともなプログラマが食っていける
0456デフォルトの名無しさん
2009/02/01(日) 22:06:470457デフォルトの名無しさん
2009/02/01(日) 22:16:210458デフォルトの名無しさん
2009/02/01(日) 22:25:41アホはAWK
0459デフォルトの名無しさん
2009/02/01(日) 22:28:25http://www.kh.rim.or.jp/~nagamura/misc/stroustrup-interview.html
0460デフォルトの名無しさん
2009/02/01(日) 22:39:58むしろ策略を追加してる印象。
0461デフォルトの名無しさん
2009/02/02(月) 00:01:39そのカスである俺よりもひどい能力の人が上司だったりしたこともあるので
カスはカスで生きる方法があるんだと思う今日この頃。
0462デフォルトの名無しさん
2009/02/02(月) 00:02:250463デフォルトの名無しさん
2009/02/02(月) 01:22:59一番大きいのはいうまでもなくC++だろうが。
0464デフォルトの名無しさん
2009/02/02(月) 03:43:42>>463が想像するより人によってかなり差がある
0465デフォルトの名無しさん
2009/02/02(月) 13:20:46いちいちそんなカス言語を引き合いに出してくれるなよ。
0466デフォルトの名無しさん
2009/02/02(月) 14:34:28その正反対のパラダイムをもつHSPを知ることが先決。
0467デフォルトの名無しさん
2009/02/02(月) 14:38:360468デフォルトの名無しさん
2009/02/02(月) 15:19:35正反対とは?
0469デフォルトの名無しさん
2009/02/02(月) 15:29:580470デフォルトの名無しさん
2009/02/02(月) 15:32:18マスターすることなんてできないだろうから、
このスレで発言するいること自体間違ってる。
0471デフォルトの名無しさん
2009/02/02(月) 15:59:180472デフォルトの名無しさん
2009/02/02(月) 16:30:40> 最上層と最下層の間の幅が一番小さいのはやっぱりHSPなのか?
> 一番大きいのはいうまでもなくC++だろうが。
人によってそんなに差がある言語は困るんだよ
ウンコプログラマーには分からんと思うけど
0473デフォルトの名無しさん
2009/02/02(月) 18:19:140474デフォルトの名無しさん
2009/02/02(月) 19:29:46誰と戦ってるんだお前
0475デフォルトの名無しさん
2009/02/02(月) 19:58:01C++ と、じゃね?
0476デフォルトの名無しさん
2009/02/02(月) 23:58:060477デフォルトの名無しさん
2009/02/02(月) 23:59:450478デフォルトの名無しさん
2009/02/03(火) 02:40:03HSP: 単純・低機能・パラダイムレス・初心者に大人気
0479デフォルトの名無しさん
2009/02/03(火) 10:44:07さあ困った。
0480デフォルトの名無しさん
2009/02/03(火) 12:12:00スレで、極東ローカルでゴミしかつかってない言語の話をするのか。
0481デフォルトの名無しさん
2009/02/03(火) 12:17:18このスレで語ってるわけではない。
0482デフォルトの名無しさん
2009/02/03(火) 14:59:25支持基盤が強いので化ければC++を駆逐できる可能性はあると思う。
0483デフォルトの名無しさん
2009/02/03(火) 15:48:29馬鹿も休み休み言え。
0484デフォルトの名無しさん
2009/02/03(火) 16:25:220485デフォルトの名無しさん
2009/02/04(水) 07:52:13やればやるほど分からないことやきちんと理解していないことが
次から次へとどんどん出てくるんだよな。
なんか果てしない戦いが続いてる感じになってくる。
プログラム言語ってこういうもんなんだろうな。
C++も少しは勉強したんだが、C++プログラマになるとウンコになるのか。
やめとこうかなw
0486デフォルトの名無しさん
2009/02/04(水) 08:08:25ライブラリーを全部覚えるとかならともかく文法や作法はそれほど難しくないと思うけど。
演算子の優先順位とかなら暗記する必要もないし。
0487デフォルトの名無しさん
2009/02/04(水) 08:19:32*が増えると普段使ってないと割ときついね
0488デフォルトの名無しさん
2009/02/04(水) 08:32:55それだとCからキツイのでは・・・?
0489デフォルトの名無しさん
2009/02/04(水) 08:49:24STL、Boostを参考にコーディングし、
JAVA、C#、COOLを勉強するのばベストだね。
MFCから入ると変な癖つくからやめたほうがいいと思った。
0490デフォルトの名無しさん
2009/02/04(水) 09:14:300491デフォルトの名無しさん
2009/02/04(水) 09:19:43どっちも生きてる上で「先に生まれたぶんだけ長寿」な場合、
設計の古さのアピールにしかならないかも。
0492デフォルトの名無しさん
2009/02/04(水) 09:42:14それは、MFCは何時死んだ設定で計算してんの?
0493デフォルトの名無しさん
2009/02/04(水) 12:28:49>プログラム言語ってこういうもんなんだろうな。
そういうもん。
まあ、やろうとしている事の複雑さによる。
>C++も少しは勉強したんだが、
テンプレートの魔力に取り込まれた人の一部は
一生闘い続けた挙句、boost という魑魅魍魎を召喚しました。
0494デフォルトの名無しさん
2009/02/04(水) 13:22:46Boostなんか超絶悪い癖が付くから、参考にしない方がいい。
悪癖を自覚しながら使うのはいいけど。
0495デフォルトの名無しさん
2009/02/04(水) 13:38:01better C以外の使い方はするな。
Templateの変態度を味わいたいならBoostガンガン使え
でも檻から出てくるなよ
0496デフォルトの名無しさん
2009/02/04(水) 14:16:06でも、その一部が次期C++に入りそうなんだろ。
楽しみ半分、不安も半分。
0497デフォルトの名無しさん
2009/02/04(水) 16:41:37ソースコードは悪魔だけど。
0498デフォルトの名無しさん
2009/02/04(水) 16:43:19>>485だけど、文字列を扱う際に配列で扱うのとポインタで扱うのでは
微妙に違うから、それがらみで混乱することがあるかな。
Cでの文字列の扱いは基本的に嫌い。
C++だとstringクラスあるから文字列の扱いは楽なんだろうなあ。
0499デフォルトの名無しさん
2009/02/04(水) 17:36:03C++の基本機能 ぐらい理解しろ。
BetterCを味わいたいならEC++でも使ってろ
でも檻から出てくるなよ
0500デフォルトの名無しさん
2009/02/04(水) 18:15:31これのこと?逆に、C++として何か欠けているの?
http://www.caravan.net/ec2plus/
0501デフォルトの名無しさん
2009/02/04(水) 18:44:13主に例外とテンプレートと名前空間がない
あと多重継承とかRTTIとか新形式キャストとか
要するにアンチC++厨が嫌いなものを取っ払ったんだが
本当にただ取っ払っただけなので色々と使い物にならない
特に例外まわり
0502デフォルトの名無しさん
2009/02/04(水) 18:44:48CVSとサブバdisってGit作ったくらいだからやるんじゃないか?
0503デフォルトの名無しさん
2009/02/04(水) 18:47:48とLinusは答えるだろう
0504デフォルトの名無しさん
2009/02/04(水) 19:24:29どう見ても一発屋だろ。
0505デフォルトの名無しさん
2009/02/04(水) 20:00:42馬鹿が存分に休みながら言ってるってことかwww
0506デフォルトの名無しさん
2009/02/04(水) 20:16:49ということは、HSP開発者>Linusってことになるのか…
0507デフォルトの名無しさん
2009/02/04(水) 20:29:23当たり前だろ。
何をいまさら。
0508デフォルトの名無しさん
2009/02/05(木) 00:42:14>>501が上げたものにメリットがほとんど感じられないうえ
デメリットが大きすぎる。
0509デフォルトの名無しさん
2009/02/05(木) 00:44:20例外
我々はC++例外を使用しません。
0510デフォルトの名無しさん
2009/02/05(木) 00:57:17それを飛び越えてグローバルな世界にしゃしゃり出てくると無限地獄の始まり。
0511デフォルトの名無しさん
2009/02/05(木) 00:58:210512デフォルトの名無しさん
2009/02/05(木) 01:05:54Linusは、C++もCも糞だが、Cの方が圧倒的にマシだから
使ってるって書いてたよ。
Cを完璧な言語なんて思ってないと思うよ。
0513デフォルトの名無しさん
2009/02/05(木) 01:08:130514デフォルトの名無しさん
2009/02/05(木) 01:08:170515デフォルトの名無しさん
2009/02/05(木) 01:11:13COBOL
0516デフォルトの名無しさん
2009/02/05(木) 01:12:39PASCAL・・・は、安全だけど、実用的じゃない・・・
0517デフォルトの名無しさん
2009/02/05(木) 01:15:53ただし、ごく一部の用途に限る
0518デフォルトの名無しさん
2009/02/05(木) 01:33:55EmbededC++よりももっと自由度高く。
多重継承禁止オプションとかテンプレート禁止オプションとか。
0519デフォルトの名無しさん
2009/02/05(木) 01:35:180520デフォルトの名無しさん
2009/02/05(木) 01:41:54全てのクラスにerrno的なフラグ仕込んで作るたびにチェックしてるんだろうか
例外で通知するより凄く忘れやすそうだし、危険に感じるんだけど
例外アンチの人たちはその辺どうなの
0521デフォルトの名無しさん
2009/02/05(木) 01:45:140522デフォルトの名無しさん
2009/02/05(木) 01:50:04コンストラクタのエラーを拾うのがファクトリ関数になるだけで話は一緒だろ
初期化関数?いちいちデフォルトコンストラクトしてから値設定し直すの?
実行効率命の組み込みでそんなことしてていいの?
0523デフォルトの名無しさん
2009/02/05(木) 02:03:040524デフォルトの名無しさん
2009/02/05(木) 02:03:510で書いた既存のC++コードは置換すらできない。
0525デフォルトの名無しさん
2009/02/05(木) 02:12:390526デフォルトの名無しさん
2009/02/05(木) 02:13:57初期化関数がインライン化できない程度に複雑だったら無理だろJK
0527デフォルトの名無しさん
2009/02/05(木) 02:26:43チーム仕事したことないだろ・・・
0528デフォルトの名無しさん
2009/02/05(木) 08:43:14Cのどこが安全なんだ
むしろ安全じゃないから専門家に使いやすいのに
安全を追うならVBでも使ってろ
0529マイク ◆gZ6OoOjBU6
2009/02/05(木) 09:35:06アメリカ人らしくて本音をちゃんと名前を出してぶっちゃけてくれているから
アメリカつうか白人文化は良いな。
0530デフォルトの名無しさん
2009/02/05(木) 09:42:390531デフォルトの名無しさん
2009/02/05(木) 09:42:540532デフォルトの名無しさん
2009/02/05(木) 10:09:26C++に精通したプログラマはついついC++の高度なテクニックを使って
しまう。ところが、ペイペイの新米プログラマはそのコードの意味を
真に理解しておらず、誤解からバグを組みこんでしまう。
直接的にバグを仕込んだ新米プログラマが怒られるのだろうが、
考えようによっては高度で難解なコードを書いたベテランC++
プログラマの方がバグを発生させる罠を仕掛けたようなもので、
もっと責任が重いと思う。
まぁ、C++はプログラマの習得レベルの差が露骨に表れるから
共同開発には不適で、一人のプログラマがシフト開発するとき
しか使えない言語ってことだ。
0533デフォルトの名無しさん
2009/02/05(木) 10:12:44>>532
どうだろ。無能は VB8 やらせても無能だしなあ。
0534デフォルトの名無しさん
2009/02/05(木) 10:43:17「坊主憎けりゃ袈裟まで憎い」の典型的コメントだな
別にC++が悪いわけではない
無能プログラマが悪いだけだ
0535デフォルトの名無しさん
2009/02/05(木) 11:12:15オレはCのエキスパートだが(この点について煽りたきゃ好きなだけ煽れw)、C++でオーバーロードやら
派生やらを駆使したプログラムを追うのは苦労するし、そんな書き方する奴はアホかと思うぞ。
C++の「美しい」書き方は解析やデバッグにはまるで向かないんだよ。沢山のクラスに「append()」が
あったとき、コード中にある「hoge.append()」が一体どこを指しているのやら、探し出すのは大変なことだ。
プログラミングで一番大変なのはデバッグなのに、それ以外の仕事で大変な思いをするのは
(しかも、みずから選んで)バカバカしいことだと思うね。
0536デフォルトの名無しさん
2009/02/05(木) 11:19:18追いかけないと気がすまないのが C のエキストラとやらですか。
まあ下手糞にクラス作らせると、そういうこともあるけどさ。
0537デフォルトの名無しさん
2009/02/05(木) 11:22:00派生やオーバーロードを他人が追うことになっている時点でC++の使い方を間違えている。
ユニット化してブラックボックスで使うものだろ。
0538デフォルトの名無しさん
2009/02/05(木) 11:23:15デバッグ時や機能拡張時は追いかけざるを得ないだろう。
動いているものなら放っておくよ。
0539デフォルトの名無しさん
2009/02/05(木) 11:28:16おまえも何を言ってるんだか。
ブラックボックス化したクラスは、本人しか触るべきでない?
そいつが辞めたら、死んだら、どうするんだ。
機能拡張のために、またしても派生クラスを作るのか。
元のクラスを見ないまま派生して、効率が悪い、遅い、だけならいいが、
見ないまま書いたコードがバグらない保証があるのか?
だいたい、「本人しか触れない」と宣言した時点で、糞コード確定だってことわかってるか?
0540デフォルトの名無しさん
2009/02/05(木) 11:28:59他人がデバッグや機能拡張している時点でC++の使い方を間違えている
0541デフォルトの名無しさん
2009/02/05(木) 11:30:11オブジェクト指向全般に対する批判だな、こりゃ。
クラスの仕様書が残っていないのが悪い。
0542デフォルトの名無しさん
2009/02/05(木) 11:36:42どんなツモリ、と
どうデキテルはちがうだろ。
0543デフォルトの名無しさん
2009/02/05(木) 11:45:010544デフォルトの名無しさん
2009/02/05(木) 11:51:55IDE支援なしで組んでるの?
0545デフォルトの名無しさん
2009/02/05(木) 12:07:36お前は立派な糞グラマだ
0546デフォルトの名無しさん
2009/02/05(木) 12:44:46お前みたいなのがバグを引き起こすテロリストになるのだ。
腐れチンポが、死ね。
0547デフォルトの名無しさん
2009/02/05(木) 12:50:52逆ギレすんなよウンコグラマ
0548デフォルトの名無しさん
2009/02/05(木) 13:02:00> オブジェクト指向全般に対する批判だな、こりゃ。
これに尽きる。Cのエクスタシー君の話は、「C++の話」ではない。
0549デフォルトの名無しさん
2009/02/05(木) 13:07:48でもその逃げ道は、「C++で書かれたプログラムはデバッグも修正もおそろしく手間がかかる」という
命題を否定できないけど、いいのか?
0550デフォルトの名無しさん
2009/02/05(木) 13:11:27継承とか例外がなくなれば解決する主張する人間では、どっちがマシだろうか。
0551デフォルトの名無しさん
2009/02/05(木) 13:16:10で、クラス図くらいは書いた上での話なんだろうな。
>>539の言っているのは一つの関数を複数人でいじり倒すのと同じことなのだが
0552デフォルトの名無しさん
2009/02/05(木) 13:24:46share ptrとかくだらん小細工ばかり多すぎ
0553デフォルトの名無しさん
2009/02/05(木) 13:35:04そんなこといってるから
例外出た時に
メモリリークしてても気づかないんだよ。
0554デフォルトの名無しさん
2009/02/05(木) 13:37:00お前はC丼でも使ってろ
0555536
2009/02/05(木) 13:40:37C++ はマルチパラダイムです。検討ハズレですね。
つか、なんで双方必死なの?
個人的には、構造化すら満足に出来ない連中に
「OOノススメ」なんて無茶だと思うんだが。
0556デフォルトの名無しさん
2009/02/05(木) 13:41:230557536
2009/02/05(木) 13:41:40「検討」とはなんたる失態。
0558デフォルトの名無しさん
2009/02/05(木) 13:43:04C丼で思い出した。
小学生の時に、藤井と言う子がいたんだが、彼女が日直の時に黒板の井の字の中に点を打ったのは、僕です。
それ以来、彼女はみんなから、藤丼と呼ばれるようになりました。ごめんなさい。
0560デフォルトの名無しさん
2009/02/05(木) 13:53:420561デフォルトの名無しさん
2009/02/05(木) 13:56:42ちょっと待った
命題には前提があるだろ
「もし下手グラマがC++に糞コードをたくさん入れたら」という
0562デフォルトの名無しさん
2009/02/05(木) 15:25:24IDEが使えないような状況なら「デバッグはきわめて困難」だと思うぞ。
0563デフォルトの名無しさん
2009/02/05(木) 15:40:410564デフォルトの名無しさん
2009/02/05(木) 15:42:12命題って言いたいだけだから、深く突っ込むとヒス起こすのでは。
0565デフォルトの名無しさん
2009/02/05(木) 16:11:53でも自分はJavaでもC#でも同じことを感じると思う。
0566デフォルトの名無しさん
2009/02/05(木) 16:20:25動的なディスパッチがある言語(C++, Java, C#)は
ソース見ただけだと、次にどこに行くのかわかんないからねえ。
0567デフォルトの名無しさん
2009/02/05(木) 16:46:39話はそれからだ
0568デフォルトの名無しさん
2009/02/05(木) 17:11:060569デフォルトの名無しさん
2009/02/05(木) 18:03:190570デフォルトの名無しさん
2009/02/05(木) 19:01:43on the flyでswitch文に変換して表示してくれるエディタを開発すればいいのだ
0571デフォルトの名無しさん
2009/02/05(木) 19:10:50gdbなめんな
慣れれば超便利だぞ
0572571
2009/02/05(木) 19:11:46まあ普通にデバッグでやりたいと思えることはちゃんとできる
0573デフォルトの名無しさん
2009/02/05(木) 20:29:17がりがり書いてたんだけど、後で見直したらスパゲッティだった。
で、気が向いてC++に移植したんだけど、ずいぶん見通しが良くなってコードも短くなった。STL使ってるが。
コードを解くAIもクラスに分離できたし、いいことしかなかった。そんな趣味グラマ。
っていうかね、C++から離れられん体になってしまった。
クラスのいいところは、Length()とかSize()とかIsEmpty()ってメソッドが直感的に使えること。回りくどくない。リードオンリーだし。
不満は参照が固定されることだなぁ。ポインタ見たく挿しかえれないのが最初戸惑った。
0574デフォルトの名無しさん
2009/02/05(木) 20:29:34マジで頭いいな!
と一瞬思ったけど、すぐに、Cのコードをcppでマクロ展開したときの
苦い思い出が頭をよぎったよ。
0575デフォルトの名無しさん
2009/02/05(木) 20:29:48結局使う人次第でしょ。
0576デフォルトの名無しさん
2009/02/05(木) 20:31:280577デフォルトの名無しさん
2009/02/05(木) 20:34:42そうかもしれん。。。
0578デフォルトの名無しさん
2009/02/05(木) 20:46:40デバッガが無いなら typeid でも出力すればいい。
0579デフォルトの名無しさん
2009/02/05(木) 20:56:02file.open("r")がopen(file,"r")より読みやすいとはどうしても思えない
メンバ関数って結局は仮想関数の都合で第一引数を特別扱いしてるだけだろ
そもそも読みやすくするための構文じゃないと思うんだけど
0580デフォルトの名無しさん
2009/02/05(木) 21:01:140581デフォルトの名無しさん
2009/02/05(木) 21:03:36継承やオーバーロードが追えないとか言うからクラス図を書けといったのに、
今度はメモリリークですか。
やれやれ。
話を逸らさないと都合が悪いようだな。
0582デフォルトの名無しさん
2009/02/05(木) 21:24:01そんな貴方にscheme
0583デフォルトの名無しさん
2009/02/05(木) 21:26:20えーっと、何かを開くときは、コンストラクタで指定するのがほとんどなんで、そういう奇妙なことにはならんと思うよ。
std::ifstream ifs(Path);
で開ける。開いたかどうかは、isf.is_open();で一発。読み取りはこれでok。
もちろんifs.open(Path);ってこともできる。
ちなみに書き込みは、
std::ofstream ofs(Path);〜。
でOK。
俺の場合だけども、基本的にカウンタ以外の変数の使いまわしはしないなぁ。
0584デフォルトの名無しさん
2009/02/05(木) 21:40:48操作の主体となるデータがはっきりするから
OOの方が分かりやすいと思うが。
というか、ファイル名はどこに指定するんだ? それは。
0585デフォルトの名無しさん
2009/02/05(木) 21:48:10ファイル名用の引数忘れてた…気にしないでくれ
それはそれとして、fileは操作の主体じゃないぞ
ファイルディスクリプタはファイルから中身を取り出すためのトンネルであって主体はあくまでファイルの実体
だからたとえばreadはfileを読むんじゃなくてトンネルに手を突っ込んで中身を取り出す操作なんだから
file.read()よりread(file)の方が間違いなく的を射てる
OOってその辺の混同を招くから気持ち悪いんだな、うん
0586デフォルトの名無しさん
2009/02/05(木) 21:49:39カウンタも使い回すか?
その都度、forで宣言するだろ。
0587デフォルトの名無しさん
2009/02/05(木) 21:52:50file.read()とかよりバイナリメソッドを例にとったほうがいいよ
"".equals(s)とかs.equals("")とかいうやつね
0588デフォルトの名無しさん
2009/02/05(木) 21:53:17まあ、一口にOOといっても、Common LispのCLOSみたいなのならそういう気持ち悪さは無いが
0589デフォルトの名無しさん
2009/02/05(木) 21:55:49ファイルディスクリプタの先にあるファイルそのものも
カプセル化により抽象化して内包してしまえるのだよ
0590デフォルトの名無しさん
2009/02/05(木) 21:55:58バイナリメソッドは実はそんなに気にならないなぁ
"".equals(s)は「.equals」って演算子みたいに見えるから
二項演算は操作が真ん中にある方がしっくり来る
0591デフォルトの名無しさん
2009/02/05(木) 21:56:53C++なら
file1.read()
file2.read()
と書けるけど
Cなら
read_file1(file1)
read_file2(file2)
になる。
オーバーロードできないといちいち名前変えなきゃいけないから気持ち悪いんだな、うん
0592デフォルトの名無しさん
2009/02/05(木) 21:58:58本来対等である2項演算子のoperandのどっちかを無理やり「receiver」に
見立てなきゃいけないのは不自然だと思わないの?
Lispなら常にoperatorが前置でoperandは平等かつ何個でも置けるね
0593デフォルトの名無しさん
2009/02/05(木) 21:59:41それが嫌なんだよなぁ
オブジェクト指向ってそういう風に「同じようなものに関わってるけど、実は微妙に違うもの」ってすぐ隠蔽しちゃうじゃない
実はその微妙な違いが大事だったりするのにさ
下手に隠蔽するから、いざ区別が必要になった時に微妙に違うクラス作り直すことになって
同じような名前が付いてて同じような機能持ってて……ってありがちじゃん
元々別にしてりゃよかったのに
0594デフォルトの名無しさん
2009/02/05(木) 22:06:24こいつらは批判精神なんてとっくに失ってる。
何も考えずにオブジェクト指向を信仰してるだけなんだから。
出現からこれだけ時間が経って、これだけ成果を挙げていないものを
いつまでも信じるなんて信仰以外の何物でもないよ。
0595デフォルトの名無しさん
2009/02/05(木) 22:06:59自分の無能さを言語のせいにしてると、いつまでたっても成長しないよ。
0596デフォルトの名無しさん
2009/02/05(木) 22:08:48たまーに、必要になるときがあるんだわ。基本的にはそのつど宣言するのだけども。
0597デフォルトの名無しさん
2009/02/05(木) 22:09:27C++の標準からしてそうじゃん…
stringとstringstreamとかさ
ただのchar[]に大げさな名前と機能付けて似たようなもの2つも作ってアホかと
0598デフォルトの名無しさん
2009/02/05(木) 22:10:410599デフォルトの名無しさん
2009/02/05(木) 22:12:09それはバイナリ配列でしょ。
0600デフォルトの名無しさん
2009/02/05(木) 22:12:180601デフォルトの名無しさん
2009/02/05(木) 22:13:35vector<char> を使わざるを得ないんだよ、現状では。
そのうち string 使えるよう保証されるようになるけど。
0602デフォルトの名無しさん
2009/02/05(木) 22:14:270603デフォルトの名無しさん
2009/02/05(木) 22:17:42奇妙な設計に見えるなぁ。
Cとの互換性のためって言うならそういうのもあるんだろうけどさ。やったことないや。
0604デフォルトの名無しさん
2009/02/05(木) 22:24:24C++に文句言ってる奴はC止まりの奴に決まってる
0605デフォルトの名無しさん
2009/02/05(木) 22:26:57なぜかC++信者はCをよく理解してない分際で「C止まり」などと見下したことを抜かすんだよなあ
0606デフォルトの名無しさん
2009/02/05(木) 22:29:33何を抜かすか
俺はC89の規格が決まった頃からずっとCを使っている
いわゆる両刀使いだ
0607デフォルトの名無しさん
2009/02/05(木) 22:30:17現状の規格では string の内部バッファは連続領域とは限らない。
だから規格に厳密に従うなら、string をこの目的で使う事は出来ない。
昔は vector もそうだったが、2003年に改善された。
string も次期で改善される予定。
まあ、実際に string の内部バッファが連続領域でない実装なんて知らないけど。
data() や c_str() の実装の手間を考えると当然だろう。
0608デフォルトの名無しさん
2009/02/05(木) 22:47:44なるほど。
0609デフォルトの名無しさん
2009/02/05(木) 23:50:52そういえば、s.equals("")なら許せるけど、Javaとか(C++も?)
定数文字列を先に持ってくる奴が多いんだろう
C言語でも、if( 0 == p ) みたいにひっくり返す馬鹿がいるけど、
== を = と書いたことを検出できる、とか言い訳にもならない
0610デフォルトの名無しさん
2009/02/05(木) 23:55:16javaのは、sがnullでもヌルポが発生しないってことらしい。
ダメテクニックだな。
0611デフォルトの名無しさん
2009/02/05(木) 23:56:18明示的にboolにキャストが必要とかすればp=0とかしようが間違えないわけで。
0612デフォルトの名無しさん
2009/02/05(木) 23:56:590613デフォルトの名無しさん
2009/02/05(木) 23:57:14ミ ∠_)
/
/ \\
ウイーン Γ/了 | |
ウイーン |.@| | | ガッガッガッ
| / | . 人
|/ | < >_Λ∩
_/ | //. V`Д´)/>>610
(_フ彡 /
0614デフォルトの名無しさん
2009/02/05(木) 23:59:25ふつー一発でわかります。
0615デフォルトの名無しさん
2009/02/06(金) 00:09:58なるほど・・・
0616デフォルトの名無しさん
2009/02/06(金) 00:11:45実務経験無い人は、無理にレスしなくていいよ
0617デフォルトの名無しさん
2009/02/06(金) 00:15:53スーパーハッカーですね
0618デフォルトの名無しさん
2009/02/06(金) 00:16:530619デフォルトの名無しさん
2009/02/06(金) 00:17:25Java/C#ならエラーだし、C++だって警告くらい出すぞ。
0620デフォルトの名無しさん
2009/02/06(金) 00:23:09そういえば、C#やjavaでも定数を左のおくスタイルの人っているけど、
ああいうのは、意味を分かってやってるのだろうか。
0621デフォルトの名無しさん
2009/02/06(金) 00:43:160622デフォルトの名無しさん
2009/02/06(金) 00:55:16中規模クラス以上の開発で責任者やったこと奴いないの?
すくなくともデメリットくらい語れないと話にならない。
0623デフォルトの名無しさん
2009/02/06(金) 00:57:200624デフォルトの名無しさん
2009/02/06(金) 01:00:01実務に携わって、しかもけっこうな規模をやってるって事実のほうが怖い。
0625デフォルトの名無しさん
2009/02/06(金) 01:02:19そういう奴とは二度と一緒に仕事しないけど
0626デフォルトの名無しさん
2009/02/06(金) 01:02:360627デフォルトの名無しさん
2009/02/06(金) 01:03:110628デフォルトの名無しさん
2009/02/06(金) 01:03:400629デフォルトの名無しさん
2009/02/06(金) 01:05:18俺の職場のコードは腐ってる
読めば読むほど何も考えてないことが伝わってくる
まさにウンコ
0630デフォルトの名無しさん
2009/02/06(金) 01:06:08定数を左に置くのがいいとか思っちゃうんでしょ?
0631デフォルトの名無しさん
2009/02/06(金) 01:09:04やった経験くらいはあって語ってるんだよな?
0632デフォルトの名無しさん
2009/02/06(金) 01:10:37そんなんじゃ気が付いたら回りに誰もいなくて君一人だね
0633デフォルトの名無しさん
2009/02/06(金) 01:11:36警告すらも理解できない奴ばかりなの?
0634デフォルトの名無しさん
2009/02/06(金) 01:13:15現実を見ようよ
そんな立派なグラマばっかりいないから
0635デフォルトの名無しさん
2009/02/06(金) 01:15:32さすがにこええ
警告をエラーにすればいいんじゃないの?
とんでもない回避されるけどw
0636デフォルトの名無しさん
2009/02/06(金) 01:16:23誰かLinusの書いたC++のコードを見たのか?
0637デフォルトの名無しさん
2009/02/06(金) 01:17:40スタイルの話題になると「俺は経験で」で言い出すやついるけど、
匿名でそれやっても、論拠にならないよ。
俺がみたいくつかの大規模で世間で評価されてるプロダクトのソースは
定数を左におくスタイルは採用してない。
0638デフォルトの名無しさん
2009/02/06(金) 01:18:390639デフォルトの名無しさん
2009/02/06(金) 01:19:200640デフォルトの名無しさん
2009/02/06(金) 01:20:350641デフォルトの名無しさん
2009/02/06(金) 01:21:130642デフォルトの名無しさん
2009/02/06(金) 01:23:11自称実績のある人じゃなくて、本当に実績のある人の。
0643デフォルトの名無しさん
2009/02/06(金) 01:24:29本当に出来る奴ならどうでもいいって言うと思うぞ。
0644デフォルトの名無しさん
2009/02/06(金) 01:26:320645デフォルトの名無しさん
2009/02/06(金) 01:27:19=を書き間違ってないかのチェックなんてコンパイラに任せればいいんだから左に定数を書くのが正しい
本当に出来るならそう言うはずだ
0646デフォルトの名無しさん
2009/02/06(金) 01:27:49そんなことはない。
定数を左のスタイルの話題は昔からある話題で有名で知ってる人は多い。
で、そのスタイルが少数派ってことは、どうでもいいじゃなくて、知ってて採用してないってこと。
0647デフォルトの名無しさん
2009/02/06(金) 01:28:350648デフォルトの名無しさん
2009/02/06(金) 01:29:02と付け加えるのが真のプロフェッショナル
0649デフォルトの名無しさん
2009/02/06(金) 01:31:140650デフォルトの名無しさん
2009/02/06(金) 01:31:58一通り書いてテストしてる間は左に定数置いて
リリースする時に==の両辺を入れ替えてるんだよ
grepで一発だし==なら入れ替えても意味が変わる心配はない
みんなそうしてると思うんだけど
0651デフォルトの名無しさん
2009/02/06(金) 01:33:050652デフォルトの名無しさん
2009/02/06(金) 01:34:340653デフォルトの名無しさん
2009/02/06(金) 01:34:45&&の入れ替えならダメだけど==は評価順不定だから
0654デフォルトの名無しさん
2009/02/06(金) 01:34:48これって例をだしてみればいいのに。
名前の出せない「俺がやった大規模プロジェクト」以外にもあるんでしょ?
0655デフォルトの名無しさん
2009/02/06(金) 01:35:56int a(int v){ static float s = 100; s /= v; return s;}
0656デフォルトの名無しさん
2009/02/06(金) 01:36:58それ縛りのコードは少ないだろうが。
0657デフォルトの名無しさん
2009/02/06(金) 01:37:230658デフォルトの名無しさん
2009/02/06(金) 01:37:440659デフォルトの名無しさん
2009/02/06(金) 01:38:17こんどから注意してみてみたら?
すごい少数派だと思うよ。
0660デフォルトの名無しさん
2009/02/06(金) 01:38:55不定だな
if( a(2) == a(1) )だとしても不定には変わりない
意味も動作も変わらない
0661デフォルトの名無しさん
2009/02/06(金) 01:40:230662デフォルトの名無しさん
2009/02/06(金) 01:40:380663デフォルトの名無しさん
2009/02/06(金) 01:40:440664デフォルトの名無しさん
2009/02/06(金) 01:41:250665デフォルトの名無しさん
2009/02/06(金) 01:43:11grep一発でどうやるの?
0666デフォルトの名無しさん
2009/02/06(金) 01:44:21655のコードでif( a(1) == a(2) )なら偽でif( a(2) == a(1) )なら真になるとか
思ってる輩は紛れてないよな?
0667デフォルトの名無しさん
2009/02/06(金) 01:44:38人とプログラム書いたことないんだから。
0668デフォルトの名無しさん
2009/02/06(金) 01:45:120669デフォルトの名無しさん
2009/02/06(金) 01:47:15まさかとは思うけど、お前はそうじゃないと思ってるの???
幼稚園からやり直せ
0670デフォルトの名無しさん
2009/02/06(金) 01:49:11if( a(1) == a(2) ){}
if( 1 == a(1) ){}
0671デフォルトの名無しさん
2009/02/06(金) 01:50:43そんなアホな。
エンバグが趣味なんですか?
0672デフォルトの名無しさん
2009/02/06(金) 01:51:370673デフォルトの名無しさん
2009/02/06(金) 01:51:570674デフォルトの名無しさん
2009/02/06(金) 01:53:10メジャーなスタイルで定数を左辺に置くのもあると思うんだが、ちょっとぐぐった程度じゃでてこないな。
バカにしてるやつは若いヤツなんだろうけど、コンパイラがウンコな時代には役に立ったものだよ。
0675デフォルトの名無しさん
2009/02/06(金) 01:53:110676デフォルトの名無しさん
2009/02/06(金) 01:55:38if( a(2) == a(1) )だとしてもa(2)とa(1)のどっちが先に呼ばれるかわからないから不定だ
0677デフォルトの名無しさん
2009/02/06(金) 01:57:340678デフォルトの名無しさん
2009/02/06(金) 01:57:580679デフォルトの名無しさん
2009/02/06(金) 01:58:14もうやめとけってwwwwwwwwwwwwwwwwwww
0680デフォルトの名無しさん
2009/02/06(金) 01:58:30不定ではあるが、「==のLHSとRHSの置換が常に等価なので置き換えても安全である」
という間抜けな主張への反証としては十分過ぎる例かと
0681デフォルトの名無しさん
2009/02/06(金) 01:58:45今なお使っている奴はなんなんだという
0682デフォルトの名無しさん
2009/02/06(金) 01:58:540683デフォルトの名無しさん
2009/02/06(金) 01:59:55自分のスタイルと違って見づらいっていうならまだしも、かっこ悪いとか時代遅れとか? 死ねよ。
0684デフォルトの名無しさん
2009/02/06(金) 02:00:24if (x = y) {..}
とか書くと今のコンパイラは大抵は警告を出す
が、別に比較式はif文だのwhile文だの中でしか使えないと決まっているわけではない
0685デフォルトの名無しさん
2009/02/06(金) 02:01:24http://www.kouno.jp/home/c_faq/c3.html#4
>>680
a(1) == a(2)もa(2) == a(1)もどっちも「不定」という意味で等価
どっちで書いたとしてもどっちが先に呼ばれるかわからないんだから
0686デフォルトの名無しさん
2009/02/06(金) 02:02:08"".equals(x)
と
x.equals("")
は意味が違うだろと
前者はreceiverがStringであることが確定している式で、xがnullでもよい
後者は確定していない(nullかもしれない)
本当は、二項演算をこのような形でしか書けないJavaがよくない
0687デフォルトの名無しさん
2009/02/06(金) 02:02:110688デフォルトの名無しさん
2009/02/06(金) 02:02:480689デフォルトの名無しさん
2009/02/06(金) 02:04:27入れ替えようと入れ替えまいと、コンパイラのご機嫌で評価順なんていくらでも変わるんだから
遅かれ速かれ言い訳することになるだろうね
あんなコード書いてたら
0690デフォルトの名無しさん
2009/02/06(金) 02:04:35>>665は?
0691デフォルトの名無しさん
2009/02/06(金) 02:05:550692デフォルトの名無しさん
2009/02/06(金) 02:05:56またひどいリンク見つけてきたな
>f() + g() * h()
>
>掛け算は足し算の前に起こるということはわかっているけれど、3つの関数のうちどの関数が最初に呼ばれるかはわからない。
そんなわけねーだろwww
0693デフォルトの名無しさん
2009/02/06(金) 02:06:520694デフォルトの名無しさん
2009/02/06(金) 02:07:16たとえ入れ替えなくてもちょっとした弾みでバグが出るんだよ
だったら入れ替えても入れ替えなくても同じじゃないか、と言ってる
0695デフォルトの名無しさん
2009/02/06(金) 02:07:360696デフォルトの名無しさん
2009/02/06(金) 02:08:27機嫌だよ
極端な話、コンパイルごとに評価順変えたっていい
それが不定(unspecified)の意味
0697デフォルトの名無しさん
2009/02/06(金) 02:10:39左辺から評価するのが普通だろ
わざわざ右辺から評価する変態コンパイラがあるわけがない
0698デフォルトの名無しさん
2009/02/06(金) 02:12:350699デフォルトの名無しさん
2009/02/06(金) 02:17:320700デフォルトの名無しさん
2009/02/06(金) 02:18:57帰れよ
0701デフォルトの名無しさん
2009/02/06(金) 02:26:32これに懲りたらもう二度と勝手に左辺と右辺を交換するなよ
評価順が変わってみんなに迷惑かけるからな
0702デフォルトの名無しさん
2009/02/06(金) 02:47:15さすがにランダムで順番決めるわけじゃないよ。
その文章は、コンパイラが違ったり、同じコンパイラでも最適化とかのオプション次第で変わるよと言う話。
0703デフォルトの名無しさん
2009/02/06(金) 04:09:55激ワロタww
0704デフォルトの名無しさん
2009/02/06(金) 07:36:50これって誰かが「こう書けば間違って(3 = a)と書いた時検出できる」って提唱して広まったんだけど、
○"=="以外では意味が無い
○"=="でも定数相手以外では意味が無い
○直感的でなく読みにくい(人間は「aが3と等しければ」と思考する、逆はあまり得意ではない)
という理由から言うほど広まらなかったんだよな。
意外に、直感的でないというのは大きい理由で、流して読んでるときにこういう箇所で「ん?」って
止まっちゃうのって結構思考の邪魔になる。
今でも頑張って「3 == a」って書いてる奴はまあ、頑固というか論理的すぎるというか形式主義
というか、要するに「感覚」より「論理」の方が大事な奴なんだろうな。
コーディングやってると「感覚」を妨げることの方がよっぽど作業効率を落とすと思うんだけどね。
0705デフォルトの名無しさん
2009/02/06(金) 07:41:500706デフォルトの名無しさん
2009/02/06(金) 07:46:04強いて言えば、読みやすい方(例えば右側)に書いている。
if ( foo >= 0 && foo < 256 ) よりも if ( 0 <= foo && foo < 256 ) の方が、読みやすいから、
こういうときは、左に書いている。まぁ、今回の話とは関係ないことだけど。
そろそろ、C++プログラマはウンコの話に戻せよ。
0707デフォルトの名無しさん
2009/02/06(金) 07:51:15こういう、数直線のイメージに拘ると称して意味不明な理屈を振り翳す奴ってよく居るよね。
前者なら「fooがゼロ以上で256未満」と素直に読めるのにね。
0708デフォルトの名無しさん
2009/02/06(金) 08:03:36if ( 0 <= foo && foo < 256 ) がif ( foo >= 0 && foo < 256 ) より読みやすいとは一切思わないね
まあこっちはそこまで読みにくくもないけど、
これの否定をif ( foo < 0 || 256 <= foo ) とか書かれると最悪なんだよ
こっちに関してはif ( foo < 0 || foo >= 256 ) の方が圧倒的に読みやすいに決まってるのに
数直線にこだわる奴は数直線で思考止まってるんだよね
0709デフォルトの名無しさん
2009/02/06(金) 08:52:09ここはうんこのスレなんだからそれらしくだな
0710デフォルトの名無しさん
2009/02/06(金) 09:41:31左定数なんておまえら何回同じ話してんだっつーの
0711デフォルトの名無しさん
2009/02/06(金) 10:47:13ttp://0xcc.net/blog/archives/000135.html
0712デフォルトの名無しさん
2009/02/06(金) 13:09:200713デフォルトの名無しさん
2009/02/06(金) 13:21:00C言語は文法が簡単なので雑談に流れやすい
C++になると言語仕様そのものが難解になるので雑談している暇がない
と言ったところか
0714デフォルトの名無しさん
2009/02/06(金) 13:28:200715デフォルトの名無しさん
2009/02/06(金) 13:36:130716デフォルトの名無しさん
2009/02/06(金) 13:41:060717デフォルトの名無しさん
2009/02/06(金) 13:45:18こういう奴にboostのソースを全部読み解けるかたずねてみたいものだ
0718デフォルトの名無しさん
2009/02/06(金) 14:02:060719デフォルトの名無しさん
2009/02/06(金) 14:04:330720デフォルトの名無しさん
2009/02/06(金) 14:15:56むしろboostを使うと
0721デフォルトの名無しさん
2009/02/06(金) 14:55:100722デフォルトの名無しさん
2009/02/06(金) 14:58:20えーと、難解だから偉い、と言っているんでしょうか?
0723デフォルトの名無しさん
2009/02/06(金) 15:17:18Pythonで普段
if 256 <= a < 4096:
pass
って書いてたら、他の言語でも自然に 0 <= a && a < 256 って読み書きするし、普通に読みやすいよ。
0724デフォルトの名無しさん
2009/02/06(金) 15:18:19言語仕様が単純明快でも高可読性には必ずしもつながらない
0725デフォルトの名無しさん
2009/02/06(金) 15:19:40否定するときは直感的に否定で書こうぜ。無理に or に書き直す必要は無い。
if ( !(0 <= foo && foo < 256))
0726デフォルトの名無しさん
2009/02/06(金) 15:34:44if (〜)
;
else
の方が…つか、style スレでやれと。何度も。
0727デフォルトの名無しさん
2009/02/06(金) 18:08:16Pythonは所詮スクリプト言語だし、効率なんてどうでもいい所で使うもんだからそれでもいいけどさ
if ( 0 <= foo && foo < 256 ) の書き方のもう一つの最悪な所として、柔軟性が全然ない
たとえばfooが負になることが滅多にないとすると、当然両辺の入れ替えを考えるわけだが
このまま入れ替えるとif ( foo < 256 && 0 <= foo ) という壮絶な式になってしまう
数直線にこだわるならif ( 256 > foo && foo >= 0 ) になるが、数直線としても向きが逆だし
ただ両辺を入れ替えるだけなのに全部書き直しだ
最初からif ( foo >= 0 && foo < 256 )ならそんなこと考える必要もないんだぜ
0728デフォルトの名無しさん
2009/02/06(金) 18:47:240729デフォルトの名無しさん
2009/02/06(金) 19:08:09>たとえばfooが負になることが滅多にないとすると、当然両辺の入れ替えを考えるわけだが
おれはそんなこと考えないから数直線で良いや。
いい加減、個人の感性の問題で、お前の感性に根拠なんて無いことを自覚しろ。
0730デフォルトの名無しさん
2009/02/06(金) 19:09:010731デフォルトの名無しさん
2009/02/06(金) 19:20:37うわこれすげーおもすれー
0732デフォルトの名無しさん
2009/02/06(金) 20:06:13おいおい…&&は偽になりやすい順に、||は真になりやすい順に並べるのが当たり前だろ
そんなことも考えずにC使うなよ
0733デフォルトの名無しさん
2009/02/06(金) 20:18:07短絡評価(short circuit)って知ってる・・・よな?
0734デフォルトの名無しさん
2009/02/06(金) 20:58:12だがそんなのはコンパイラが最適化の時に決めるもんであって人間様が気にすることじゃない
可読性の方が大事
0735デフォルトの名無しさん
2009/02/06(金) 21:09:32コンパイラに期待しすぎ
0736デフォルトの名無しさん
2009/02/06(金) 21:15:47のときに
0 <= a の方が
a < 256 よりも
先に評価されるのは仕様で決まっていますか?
0737デフォルトの名無しさん
2009/02/06(金) 21:17:47ショートサーキットに反するから絶対にひっくり返してはくれないよ。
まあ、そもそもこんなところを手動最適化したところで
効果なんてたかが知れてる。
基本的に全部読みやすく書くべき。
0738デフォルトの名無しさん
2009/02/06(金) 21:23:06それに依存した書き方がされているのが当然だから
バグ入れるなよ
0739デフォルトの名無しさん
2009/02/06(金) 21:27:54バグニモマケズ
副作用ニモマケズ
標準ニ準拠シ
プログラマノ意図ヲ汲ンデ
空気ヲ読ンデ
適切ナ方ヲ最初ニオイテクレル
ソンナコンパイラニ 私ハナリタイ
無茶言うなよ(笑)
0740デフォルトの名無しさん
2009/02/06(金) 21:30:26その「副作用」は意味合ってんの?
0741デフォルトの名無しさん
2009/02/06(金) 21:45:46(fooやifが変なマクロってのはなし)
0742デフォルトの名無しさん
2009/02/06(金) 21:50:45ああ、そこは一般論の話。
変数なら副作用は無いけど、↓
「リソウノコンパイラ」なら
hoge()>piyo()&&foo()==bar()
とかにも対応しているんじゃね?
そのときはきっと
プログラマノ意図ヲ汲ンデ
副作用がおきないことを(リソウノコンパイラが)理解した上で
空気ヲ読ンデ
適切ナ方ヲ最初ニオイテクレル
ソンナコン…(ry
っていう意味。
説明不足すまそ
0743デフォルトの名無しさん
2009/02/06(金) 22:14:56そもそもあまり書かなくない?
思い起こすと、C言語を覚えたばかりの頃はよく使っていて、
Pythonみたいな min < a < max があればいいのに、と思ったけど
今は全く使わない。
経験を積むと自然と使わなくなる書き方じゃないかなあ・・・多分
0744デフォルトの名無しさん
2009/02/06(金) 22:15:390745デフォルトの名無しさん
2009/02/06(金) 22:22:48そういう単純な範囲比較をしなくなる理由のひとつだろうね
もちろん単純に上限下限でくくって済むケースもあることは否定しないよ
0746デフォルトの名無しさん
2009/02/06(金) 22:31:38bool operator&&(int a, int b){printf("バカ\n");return 0}
0747デフォルトの名無しさん
2009/02/06(金) 22:44:040748デフォルトの名無しさん
2009/02/06(金) 22:46:490749デフォルトの名無しさん
2009/02/06(金) 22:57:180750デフォルトの名無しさん
2009/02/06(金) 23:38:180751デフォルトの名無しさん
2009/02/06(金) 23:59:10それはさすがのC++でも許してない
0752デフォルトの名無しさん
2009/02/07(土) 00:26:04つ「演算子のオーバーロード」
0753デフォルトの名無しさん
2009/02/07(土) 00:43:58ttp://www.age2.tv/rd05/src/up3543.jpg
ttp://www.age2.tv/rd05/src/up3542.jpg
ttp://www.age2.tv/rd05/src/up3541.jpg
ttp://www.age2.tv/rd05/src/up3540.jpg
0754デフォルトの名無しさん
2009/02/07(土) 00:45:010755デフォルトの名無しさん
2009/02/07(土) 00:46:01それやるならこうしないといけない
Bar operator>=(Foo, int){/*...*/}
Bar operator<(Foo, int){/*...*/}
bool operator&&(Bar, Bar){/*...*/}
0756デフォルトの名無しさん
2009/02/07(土) 00:47:340757デフォルトの名無しさん
2009/02/07(土) 00:49:290758デフォルトの名無しさん
2009/02/07(土) 01:11:400759デフォルトの名無しさん
2009/02/07(土) 01:23:290760デフォルトの名無しさん
2009/02/07(土) 01:28:53Boost Interval Arithmetic Library
http://www.boost.org/doc/libs/1_37_0/libs/numeric/interval/doc/interval.htm
0761デフォルトの名無しさん
2009/02/07(土) 03:16:02#define private public
0762デフォルトの名無しさん
2009/02/07(土) 04:16:46◎bool型
◎文字定数がchar型 (Cだとint型)
◎namaspace
◎メンバ関数 (structスコープ内限定の関数を宣言できる)
◎inline関数
◎引数省略時の解釈。 int f( ); が int f( void ); と等しい。
Cだと引数は任意の意。
○static_cast等の新形式のキャスト (もっと短くして欲しいが…)
○デフォルト引数
○structがスコープを持つ。
Cだとstruct内にstruct等を書いてもグローバルスコープ。
△参照
△変数の宣言がブロック先頭に限定されていない
まとめると
「型・スコープがより厳密になった一方で、記述の柔軟性がUP」
ですかね。
0763デフォルトの名無しさん
2009/02/07(土) 06:24:37while (T_T)//~~
0764デフォルトの名無しさん
2009/02/07(土) 10:04:51素直にLisp使え
0765デフォルトの名無しさん
2009/02/07(土) 10:22:05そういえば「出刃どらはC++で書きたい」というようなスレがLKMLであったような。
0766デフォルトの名無しさん
2009/02/07(土) 11:17:060767デフォルトの名無しさん
2009/02/07(土) 11:39:180768デフォルトの名無しさん
2009/02/07(土) 12:18:230769デフォルトの名無しさん
2009/02/07(土) 13:09:11これは同意
とはいえ、全ての関数呼び出しに名前付けろとか言われると
やりきれないけど
0770デフォルトの名無しさん
2009/02/07(土) 13:23:54名前つき引数は匿名構造体か
0771デフォルトの名無しさん
2009/02/07(土) 13:26:48foo({.hoge = hogedata, .fuga = fugadata});
とかいけるんだっけ?
0772デフォルトの名無しさん
2009/02/07(土) 13:40:460773デフォルトの名無しさん
2009/02/07(土) 14:13:32#include <stdio.h>
struct hore { int hoge, fuga; };
void foo(struct hore *data) { printf("hoge=%d\n", data->hoge); }
int main(void) {
foo(&(struct hore){.hoge = 1, .fuga = 2});
return 0;
}
多相関数なんてないんだから、キャストなしでも警告程度で自動型判定して
くれてもいいんじゃないかとオモタ。
0774デフォルトの名無しさん
2009/02/07(土) 14:44:13C99からできるようになったんだよ。
前は、GCCの拡張だった気がするけど。
まぁ、それ使い出すともうC言語じゃないと思っているから、いまだに実際に使ったことはない。
いまだに、C89でも通るように組んでいる。(というかむしろ-std=c89 -ansi -pedanticでコンパイルしている)
#if (__STDC_VERSION__ >= 199901L)で、inlineとかrestrictとか使うようにしている。
可変引数マクロを使いたいと何度思ったことか。全ては、C89で通るように。
0775デフォルトの名無しさん
2009/02/07(土) 15:20:410776デフォルトの名無しさん
2009/02/07(土) 15:27:300777デフォルトの名無しさん
2009/02/07(土) 15:33:530778デフォルトの名無しさん
2009/02/07(土) 15:35:27可変引数マクロは最低限2つ引数がないと使えないという糞仕様なので
使わなくていい。なんでgcc拡張をそのまま採用しなかったのが意味不明。
C89で通したいならMACRO(())で今後もやるしなかいな。
0779デフォルトの名無しさん
2009/02/07(土) 16:00:50引数2つってどういうこと?
http://seclan.dll.jp/c99d/c99d02.htm#dt19990405
ここにはこういう例が載っているけど。
#define dbg(fmt, ...) \
printf("debug:" fmt, __VA_ARGS__)
#define adbg(...) \ //(1)これもOK
printf("debug:" __VA_ARGS__)
0780デフォルトの名無しさん
2009/02/07(土) 16:10:11あれ?前試したときは
#define HOGE(FMT, ...)
みたいに一つは置石がないと ... を続けられなかった記憶があって
そう書いたんだけど、... 単品で通るね。
スマン、嘘情報でした _O_ (トンクス)
0781デフォルトの名無しさん
2009/02/07(土) 19:59:11C++とかコロコロ言語仕様変わるし
糞仕様のオンパレードw
0782デフォルトの名無しさん
2009/02/07(土) 20:40:210783デフォルトの名無しさん
2009/02/07(土) 20:41:47その8割方はschemeのコードから自動生成したものだったりする
Cはこういう使い方も比較的楽できるからいいね、C++でやろうとしたら
数倍難しい
0784デフォルトの名無しさん
2009/02/07(土) 20:45:01C++のコードも吐けるだろ
ほぼ同じで動くんだから
0785デフォルトの名無しさん
2009/02/07(土) 21:09:23コンパイルができるとCに変換できるはほぼ同義じゃねーかよ。
パラダイムの違う高水準言語同士で機能をフルに使った変換とか難しくて当然じゃねーかよと。
0786デフォルトの名無しさん
2009/02/07(土) 21:38:45template もあるんじゃね
0787デフォルトの名無しさん
2009/02/07(土) 21:42:34それなら全部schemeで扱って、コンパイルのときだけCにすればいいってことだね。
つまりscheme最高ってこと?
0788デフォルトの名無しさん
2009/02/07(土) 22:17:258割って書いてあるだろ。
それを無理矢理10割にしようとした結果が、C++のようなモンスター言語だ。
0789デフォルトの名無しさん
2009/02/07(土) 22:22:500790デフォルトの名無しさん
2009/02/07(土) 22:37:59これだけはガチ
0791デフォルトの名無しさん
2009/02/07(土) 22:43:23Cの膨大なライブラリもそのまんま使えるし
糞の上塗りさえやめてくれればいいんだけど
0792デフォルトの名無しさん
2009/02/07(土) 22:56:15C++はRubyよりも狂信者が多い
異端宗教者の集まりだしなw
0793デフォルトの名無しさん
2009/02/08(日) 00:00:490794デフォルトの名無しさん
2009/02/08(日) 00:08:540795デフォルトの名無しさん
2009/02/08(日) 00:24:120796デフォルトの名無しさん
2009/02/08(日) 00:25:550797デフォルトの名無しさん
2009/02/08(日) 00:31:09潔癖症は中国農薬野菜でも食ってろ
0798デフォルトの名無しさん
2009/02/08(日) 00:38:34・アクセス修飾子
・new/delete演算子とこの2つだけの演算子オーバーロード
これだけでいいよ。継承は単一継承ならホントはあってもいいけど
継承を乱用する奴多いから要らないかな・・・
0799デフォルトの名無しさん
2009/02/08(日) 00:39:390800デフォルトの名無しさん
2009/02/08(日) 00:39:530801デフォルトの名無しさん
2009/02/08(日) 00:40:190802デフォルトの名無しさん
2009/02/08(日) 00:47:280803デフォルトの名無しさん
2009/02/08(日) 01:29:13ベクトルとか行列とかクォータニオンとか複素数とか扱ったことないわけ?
0804デフォルトの名無しさん
2009/02/08(日) 01:36:46意味無いし生産性悪い書き方だから
排除すべきだろ
そんな特殊なケースのみを言語仕様に盛り込み
たがるアホがC++に多い影響でC++自体が邪教の
産物になってしまっただろ。
次期C++仕様もboostの製作陣から糞過ぎるって
痛烈に批判されてるしなw
0805デフォルトの名無しさん
2009/02/08(日) 01:39:370806デフォルトの名無しさん
2009/02/08(日) 01:42:04また状況は違ったかもしれないが、
0807デフォルトの名無しさん
2009/02/08(日) 01:47:03意味はあると思うけど、指針が無くて個々人の感性に任されるから、
乱用されて他人から見たら直感的でない、ってケースがありすぎる。
結果、いっそ排除した方が良いというハメに。
0808デフォルトの名無しさん
2009/02/08(日) 02:07:07このくらいなんてことはないよ
0809デフォルトの名無しさん
2009/02/08(日) 02:19:480810デフォルトの名無しさん
2009/02/08(日) 04:38:56stringとかvectorとか、めっさ使い勝手が悪くなると思うけど。
record = name + "\t" + address + … ;
とか書けてたのが、↓になっちゃうんですが。
record.assign( name ).append( "\t" ).append( address ) … ;
0811デフォルトの名無しさん
2009/02/08(日) 05:00:46慣れてなければPerl並に可読性悪い。
0812デフォルトの名無しさん
2009/02/08(日) 05:04:55C++のostringstreamとC#のStringBuilderでは後者のほうが使いやすいと思う。
そもそもiotreamの<<と>>が終わりの始まりだったな。
0813デフォルトの名無しさん
2009/02/08(日) 05:41:310814デフォルトの名無しさん
2009/02/08(日) 05:43:58の構成でC++/CLIを使ってみた。
変態言語だと思った。
いや、C++は好きなんだけど…
スレ違いか・・・
0815デフォルトの名無しさん
2009/02/08(日) 06:17:58& で行う言語や . で行う言語もあるんだよな。
0816デフォルトの名無しさん
2009/02/08(日) 07:35:23> record.assign( name ).append( "\t" ).append( address ) … ;
record = name + "\t" + address + … ;
⇔ (python)
'%s\t%s' % (name, address)
⇔ (python)
'%(name)s\t%(address)s' % locals()
⇔ (glib)
g_strdup_printf( "%s\t%s", name, address);
0817デフォルトの名無しさん
2009/02/08(日) 08:25:33sprintfも知らない奴は発言するな
0818デフォルトの名無しさん
2009/02/08(日) 08:34:05iotreamがC++入門者への糞設計洗脳プログラムとして作用してる。
0819デフォルトの名無しさん
2009/02/08(日) 09:22:22テレビと同レベルだな
0820デフォルトの名無しさん
2009/02/08(日) 09:38:160821デフォルトの名無しさん
2009/02/08(日) 09:38:33その二つは用途が違うだろ。
C++のstringはイミュータブルじゃないからstringbuilder系のクラスいらないし。
0822デフォルトの名無しさん
2009/02/08(日) 09:50:21他の言語がどうだってのは余り意味がないよ。
0823デフォルトの名無しさん
2009/02/08(日) 10:31:482chのC++関連のスレ潰していこうぜ
0824デフォルトの名無しさん
2009/02/08(日) 10:38:56わからないならおとなしくbetterCとして使ってればいいのに
ヘタに手を出してクソコードを生み出してる奴を叩いてるのであって
0825デフォルトの名無しさん
2009/02/08(日) 10:54:45Cはヘッダ共有しなくても、関数引数リストがわかっていれば他人の書いたソース・オブジェクトと連携できるが、
C++はヘッダ共有しないと話にならないし。
最初から統一された設計の下に作るならC++がいいが、大勢の思いつきの寄せ集め的開発手法にはあわんわな。
0826デフォルトの名無しさん
2009/02/08(日) 11:20:47ということか
0827デフォルトの名無しさん
2009/02/08(日) 11:28:15彼はレベルが高いよ。
0828デフォルトの名無しさん
2009/02/08(日) 12:23:26ないんだろうな。数学コードまったく書かない文系なんだろ。
「特殊なケース」とかアホすぎる。お前ゲーム一切やるなと
0829デフォルトの名無しさん
2009/02/08(日) 12:25:07たいしたコード書いてないって自分で白状してるようなもんだ
0830デフォルトの名無しさん
2009/02/08(日) 12:33:28演算子オーバーロードを敢えて使わないケースもあると思う。
a = b * c; とか、無駄なテンポラリオブジェクトを作って、
そこからの代入が発生してしまうので、
これが行列だったりしたら結構無駄が多くなる。
Matrix a = b * c; なら最適化効くからいいけど。
演算子オーバーロードはもっと計算量がシビアに効いてこないプログラムや値で
使った方がいいと思われ。
まあ、分数や複素数程度ならいいんじゃない?
0831デフォルトの名無しさん
2009/02/08(日) 12:38:420832デフォルトの名無しさん
2009/02/08(日) 12:43:01C++が使いたい奴は、勝手に使ってもらって構いません。
わたしとあなたが出会わなければいいだけです。
C++の演算子オーバーロードは、抽象データ型を直感的に(原始データ型と同じように)扱うためにあるんだよ。
演算子オーバーロードをしないのであれば、別にC言語で十分同じようなことはできる。
TMPは、したいと思うけど、あれはコンパイラががんばっているだけだから、
何か取り決めを決めて、Perlを通して、C言語を吐かせた後にコンパイルすれば、どうにでもなる。
0833デフォルトの名無しさん
2009/02/08(日) 12:47:01演算子オーバーロードは貴重だぞ
0834デフォルトの名無しさん
2009/02/08(日) 12:54:29計算はFORTRANだろ、常考
0835デフォルトの名無しさん
2009/02/08(日) 12:55:52まったくそのとおり。
勝手に演算子オーバーロードでも使って、見た目キレイに書いて、
バグが出た時には勝手に死んでくれてればいいんだが、
オレのコードにそんな不便なものを混入されたら迷惑なんだよな。
0836デフォルトの名無しさん
2009/02/08(日) 12:58:37文字列と数学系以外使わないからどうでもいい
あとはboostが変態的な使い方してる位か
つうかC#にもあるんだがそれには文句ないのか
0837デフォルトの名無しさん
2009/02/08(日) 12:59:06ただその構文糖衣に「かけ算」っていう暗黙の解釈が存在するのが混乱の元になってるんだろうよ
オーバーロードなんて((Int,Int), *)と((MyT, MyT), *)っていう代数構造を示す組が同時に存在してるだけじゃん
それに伴う暗黙の変換は場合によっちゃ厄介だけどさ
0838デフォルトの名無しさん
2009/02/08(日) 13:00:03数値クラスの場合は関数で書いた方がバグは多いと思うぞw
0839デフォルトの名無しさん
2009/02/08(日) 13:03:360840835
2009/02/08(日) 13:21:03バグった時にひどい目に逢うと言っている。
演算子オーバーロードだけじゃない、継承もそうだし、コンストラクタもそうだし、
カプセル化と称するインターフェイスの共通化もそうだ。
オブジェクト指向はなんだか宗教みたいになってるよ。たいした功績も無いまま、
キミ達のような信者が必死に信仰してる。
そういう信者が多い方がこっちとしては希少価値が上がって助かるけどなw
0841デフォルトの名無しさん
2009/02/08(日) 13:21:47a.multiply(b).subtract(c.multiply(d))
0842デフォルトの名無しさん
2009/02/08(日) 13:23:560843デフォルトの名無しさん
2009/02/08(日) 13:26:390844デフォルトの名無しさん
2009/02/08(日) 13:26:54thisもパラメータであることを考慮してみると
xの型をTとしてx.fって呼び出しはcall(x,T::*f)であると考えられる
0845デフォルトの名無しさん
2009/02/08(日) 13:27:310846デフォルトの名無しさん
2009/02/08(日) 13:27:340847デフォルトの名無しさん
2009/02/08(日) 13:27:57具体例を挙げない体験談ほど胡散臭いものは無い
0848デフォルトの名無しさん
2009/02/08(日) 13:30:00まあそうかも知らんがめんどいしこれだけのやつらが言うって言うのも何かあるとは思うだろ。
キミはどのくらいの規模のプロジェクトをどんな立場でどのくらいやってきたんだい?
0849デフォルトの名無しさん
2009/02/08(日) 13:33:10その辺り C言語はバランスよく出来てる。
その意味では、string の + はアリだと思うけど
一般のクラスに対しても + を overload できるのはやりすぎちゃったよね
0850デフォルトの名無しさん
2009/02/08(日) 13:35:12普通に文字列の + とか使われてるが、
何の問題も起きた事無いけどな。
0851デフォルトの名無しさん
2009/02/08(日) 13:35:17やりすぎとはまったく思わない。
必要ないときは使わなければ良いだけ。
0852デフォルトの名無しさん
2009/02/08(日) 13:35:38隠蔽化だけならモジュールプログラミングなんだっけ?
0853デフォルトの名無しさん
2009/02/08(日) 13:36:18きみみたいなのがプロジェクトで深刻な問題を引き起こしてるんだよって話
0854デフォルトの名無しさん
2009/02/08(日) 13:38:210855デフォルトの名無しさん
2009/02/08(日) 13:39:54stringの+とか一部だけ許すってのは、その一部のクラスを言語の仕様に組み込んでしまうということ
特殊化より一般化
0856デフォルトの名無しさん
2009/02/08(日) 13:40:13なれないと思うけど。
0857デフォルトの名無しさん
2009/02/08(日) 13:41:000858デフォルトの名無しさん
2009/02/08(日) 13:42:47言語仕様としてはアリだと思うけど。
どう使うかは設計レベルだから、言語仕様ではなく実際の運用の話になるんではないか?
0859デフォルトの名無しさん
2009/02/08(日) 13:43:40ただ、使えない人間が沢山存在するような言語である点は褒められたものではない
0860デフォルトの名無しさん
2009/02/08(日) 13:45:44それは個人で使うならいいけど大規模プロジェクトでは問題ありと結論できない?
C++は当初(今も?)大規模開発での有用性をうたってたけど
0861デフォルトの名無しさん
2009/02/08(日) 13:47:490862デフォルトの名無しさん
2009/02/08(日) 13:47:59他にそんなことが出来るところがあるかどうかはともかく
0863デフォルトの名無しさん
2009/02/08(日) 13:48:200864デフォルトの名無しさん
2009/02/08(日) 13:50:13全部アセンブラで書くかって話だ
0865デフォルトの名無しさん
2009/02/08(日) 13:51:210866デフォルトの名無しさん
2009/02/08(日) 13:52:340867デフォルトの名無しさん
2009/02/08(日) 13:53:560868デフォルトの名無しさん
2009/02/08(日) 13:54:020869デフォルトの名無しさん
2009/02/08(日) 13:54:14これで十分だけどそう結論がついちゃったら一部のコン猿達がおまんま食い上げだから
C++は凄いとかLLでコスト削減とか関数型がクる!とか色々
0870デフォルトの名無しさん
2009/02/08(日) 13:55:03malloc使ってメモリリークしてないプログラムを見た事が無い
Cは糞言語
0871デフォルトの名無しさん
2009/02/08(日) 13:56:13スマートポインタ云々はまったく別問題だぞ
0872デフォルトの名無しさん
2009/02/08(日) 13:59:400873デフォルトの名無しさん
2009/02/08(日) 14:00:25。。。最初だけなw
0874デフォルトの名無しさん
2009/02/08(日) 14:00:40たぶん、3つかそこらしか見たことが無いんだろうな
丁寧に書けばCでもアセンブラでもメモリリークなんて起こさないよ
0875デフォルトの名無しさん
2009/02/08(日) 14:02:48>malloc使ってメモリリークしてないプログラムを見た事が無い
私がいるセカイはこんなに糞なんですよ、という告白ですか。
0876デフォルトの名無しさん
2009/02/08(日) 14:03:29それは必ずしも間違ってはいないけど
当初C++がCへのトランスレーターとして存在していたことをみても
C++のメリットとは言いがたいし、そもそも組み込み系のCとかだと違うアプローチで
メモリを扱うことによって回避している。
0877デフォルトの名無しさん
2009/02/08(日) 14:05:08演算子オーバーロードはちゃんと使える人が少ないから糞で、
mallocはちゃんと管理できる人が少なくても丁寧に書けば大丈夫!か。
何というダブルスタンダード。
0878デフォルトの名無しさん
2009/02/08(日) 14:05:55malloc()で、メモリリーク起こす人がいるから、C言語が糞言語だと言うのは、
演算子オーバーロードで、混乱を招く人がいるから、C++が糞言語と言うのと同じだ。
使う人が問題なだけであって、それ自体は問題ではない。
0879デフォルトの名無しさん
2009/02/08(日) 14:07:43あるいは、管理はできてるけど、ifの中に毎回大量のfree書いてるような糞コードとか。
0880デフォルトの名無しさん
2009/02/08(日) 14:08:29夢の技術を妄信しておれたち頭良すぎるから納期に間に合わずバグてんこ盛りで納品!
もうあほかとね。昔から自前で回避してた技術をすべて否定して夢の技術を妄信するってどうなんかと。
0881デフォルトの名無しさん
2009/02/08(日) 14:09:260882デフォルトの名無しさん
2009/02/08(日) 14:11:21newもmallocも正しいタイミングで開放できなきゃ分断化でリークと変わらず問題がでるんだが
0883デフォルトの名無しさん
2009/02/08(日) 14:15:12自分で例外使わなくても、ライブラリが例外投げることもある。
ちゃんと毎回try-catchしてdeleteしてんのか?
0884デフォルトの名無しさん
2009/02/08(日) 14:15:330885デフォルトの名無しさん
2009/02/08(日) 14:18:300886デフォルトの名無しさん
2009/02/08(日) 14:22:46メモリリークを発生させないことが証明できない限りは安全とか言っちゃ駄目なんだね
コメントに証明を書かないとね
でもそこまでするならコードが仕様の証明になる言語が欲しいわ
0887デフォルトの名無しさん
2009/02/08(日) 14:25:10このバグはスマートポインタのせいだから直しませんよってスタンスなんだね。わかります。
0888デフォルトの名無しさん
2009/02/08(日) 14:26:00RAII 程度に抑えておけばよかったのに、欲張ったあげく
ポインタを完全に置き換えられるわけでもないから
結局新しいバッドノウハウを生み出している。
スマートポインタ使う時に気を回す手間で、
まともに free やdelete が書けるよ。まともな人なら
0889デフォルトの名無しさん
2009/02/08(日) 14:28:420890デフォルトの名無しさん
2009/02/08(日) 14:29:460891デフォルトの名無しさん
2009/02/08(日) 14:30:04そもそも例外とかスマートポインタを使わないメモリ管理は、free/deleteの箇所が分散して、まともな人でも見落とす/見づらいコードになりやすい。
0892デフォルトの名無しさん
2009/02/08(日) 14:30:280893デフォルトの名無しさん
2009/02/08(日) 14:31:57原則として特定の状況の元、リークしない事を保証するって仕様なんだから
必要条件が満たされない状況においてはリークしない保証ができないし
だから「スマートポインタのせいだから直しません」ってのはまず無理だと思うがね
0894デフォルトの名無しさん
2009/02/08(日) 14:32:210895デフォルトの名無しさん
2009/02/08(日) 14:32:400896デフォルトの名無しさん
2009/02/08(日) 14:35:400897デフォルトの名無しさん
2009/02/08(日) 15:04:48みんな無駄に求めすぎ
0898デフォルトの名無しさん
2009/02/08(日) 15:11:32お前はGCよりオバカそうだな。
0899デフォルトの名無しさん
2009/02/08(日) 15:19:37私は君みたいにおりこうさんじゃないからね
君たちがちゃんとやってくれればいいんだよ
0900デフォルトの名無しさん
2009/02/08(日) 16:07:03その代わり給料上げてね。
0901デフォルトの名無しさん
2009/02/08(日) 16:11:18残念ながら式テンプレートでも、排除しきれない例がある。
ttp://d.hatena.ne.jp/Cryolite/20040513
operator =とは別に、一時オブジェクトを生成しないassign関数を用意しているから使い分けろという形。
0902デフォルトの名無しさん
2009/02/08(日) 16:11:560903デフォルトの名無しさん
2009/02/08(日) 16:22:500904デフォルトの名無しさん
2009/02/08(日) 17:41:24あの構文糖は甘すぎて不健康とか飴玉なめながら言ってんじゃねーよ、とか
思いますです。
0905デフォルトの名無しさん
2009/02/08(日) 17:53:340906デフォルトの名無しさん
2009/02/08(日) 18:07:43C++は構文糖衣が副作用を伴いすぎてることが問題。
なかには糖衣ですらないものも。
0907デフォルトの名無しさん
2009/02/08(日) 18:26:190908デフォルトの名無しさん
2009/02/08(日) 18:28:33oh,miss spell
0909デフォルトの名無しさん
2009/02/08(日) 18:29:02既にある構文と完全に同じ意味の構文として置き換えることのできる構文のことでしょ。
例えば、C言語で言うところの(*(p + i))とp[i]の関係や
char a[] = {'f', 'o', 'o', '\0'}とchar a[] = {"foo"}またはchar a[] = "foo"の関係など。
>>904,905
意味不明だな。これがC言語使いの発言なら、とても恥ずかしく思う。
ああ、C++使いの発言でありますように。
0910デフォルトの名無しさん
2009/02/08(日) 18:31:58Fuck you
0911デフォルトの名無しさん
2009/02/08(日) 18:33:170912デフォルトの名無しさん
2009/02/08(日) 18:35:420913デフォルトの名無しさん
2009/02/08(日) 18:36:150914デフォルトの名無しさん
2009/02/08(日) 18:39:190915デフォルトの名無しさん
2009/02/08(日) 18:54:060916デフォルトの名無しさん
2009/02/08(日) 18:59:12, - _ ニニ = ー ' ´ ` ヽ 、
, ',´ィ ' ´ \
/ '/ ___ 、 、 ヽ //ヽ
. / '´, ' / , ,...:.:.':.´:.:.:.:.:.:.:.:.:.:.:.:.:`:.:.:.ヽ ヽ 冫:;ィ::::;' __
'′/ ,/ /':.:.:.:.;:. -―¬¬¬―- 、:.:ヽ ヽ/:/,.l:::::l':´_ハ
/ .,.,'' , /:,: '´ ` ', ',//;:l::::;'´ /:::/
,' // / ,'´ i l ! . | ! , r '´ l::〈 /::::ノ
i /.,' / l i l __tハ l ! .| t T¬ ト l、 ! ト、 !:::l /:; '
l./ .l ,'! l ,レ'T´ ll! !.l, l li. |', ト, _!_l `! lヾ':.l::::!l::::l
l,' l ! ! ! l', l ,ゝェ 、',|',l',. ! !.l >' ,r 、 ヽ,,'l l::ヾ:!:::|.l::::!
! l ! ', . l ' / /.n.',` .'|',| '! l 0 l '' ! .l;:::l::ー':;'::/
', !. l '., ',::''::.ヽニ.ノ, .: ::... ミニ'r l. ! ll::::ト:ヾー'
', ! ! ヽ':;:::.` ̄ ..::. ,' . l. !l::::! ';::':,
', l l ';`::::.. .::::::' ,' l !.';:::', ':;:::':,
'.,! ! ';::::::::...:::::::::r--ァ ..;' .l l! l ';:::', l';::::',
. ! l lヽ:::::::::::::::::ー.′ ..::;:;' l .l! ! ';:::':!,';::::',
! l !. ! ` 、::::::::::: ...::;:::'::/ ! ,'!. / ヽ::::':,!::::!
! l .l .l ! `ヽ:、:;::::':::::::/ ! ,','./ l ヽ:::';:::l
l l! ', . ト、. ト、',、 !:::::::::::/ , / ./// ト、、 .l! !:::ト'
l ハ . ', ',ヽ ', ヽ',\ !::::/ ///>、 、 ! ヽ!', l.l,'';;';!
0917デフォルトの名無しさん
2009/02/08(日) 19:07:18みんな好きだなあ
0918止しました。。。
2009/02/08(日) 20:53:290919デフォルトの名無しさん
2009/02/08(日) 20:57:060920デフォルトの名無しさん
2009/02/08(日) 21:03:10この景気だし暇なんだろ。
0921デフォルトの名無しさん
2009/02/08(日) 21:52:35Linus is 釣り師!
0922デフォルトの名無しさん
2009/02/08(日) 23:17:35誰だよw
0923デフォルトの名無しさん
2009/02/09(月) 00:09:340924デフォルトの名無しさん
2009/02/09(月) 00:21:360925デフォルトの名無しさん
2009/02/09(月) 00:28:39それは甘い
1+2+3
ではどうなると思う?
1+2の結果を一時オブジェクトにコピーして、その一時オブジェクトのメンバオペレータが呼び出されて+3の演算が行われて・・・となるよ。
(+ 1 2 3)
とかなら何度も一時オブジェクトが生成されない。
0926デフォルトの名無しさん
2009/02/09(月) 00:34:56そうではない。
誰かがクラス定義をちょっといじると基本的に全部コンパイルしなおしとか。
クラスを使うだけなら、メンバ関数の仕様を固めておけばいいだけだが、
クラスの中をいじると、基本的にクラスメンバなんてメンバ関数にとってはグローバル変数同然なので影響はクラス全体に及ぶ。
統一した意思の下でクラスをいじるなら問題ないけど、勝手な思惑でクラスをいじられると影響する範囲が広すぎる。
それこそ、オーバーロードや派生がどうなっているかソースから追うとかいう自称Cエキスパート君のようになる。
ま、これはLinux風な開発をしている場合の話であって、業務で誰かが統括してれば本来起こるはずはない問題だと思うけどね。
0927デフォルトの名無しさん
2009/02/09(月) 00:41:53バザールモデルで統一的な規約を強制しての開発はしにくい
ってことを言ってるのかな
>>826が言ってるのは、ABIがグダグダ&ソース依存性が高い(例えば
テンプレートライブラリはC++からしか利用できない上に、
ほとんどの処理系ではソースレベルでの利用となる)等の理由により、
低レベルのシステムプログラミングやライブラリ開発には結局向かない
(それ向きの言語であると喧伝されているが)ってことだろう
それぞれ別の、独立した問題だな
0928デフォルトの名無しさん
2009/02/09(月) 01:01:55前半のとおりです。
だから、Linusがウンコと言ったところで、開発手法が違えばウンコではないわけでね。
とはいえ、複数人でソース分けて作るのは面倒くさいなぁ。
ヘッダの他人が作る部分にプレースホルダ入れてても、最後にマージとか面倒だな。
.o作るだけでもヘッダの依存性が高すぎる。
0929デフォルトの名無しさん
2009/02/09(月) 07:07:20構造体いじっても同じことじゃねえか?
0930デフォルトの名無しさん
2009/02/09(月) 12:54:46ソースから追う以外の方法って何?
仕様書から?
0931デフォルトの名無しさん
2009/02/09(月) 15:43:360932デフォルトの名無しさん
2009/02/09(月) 20:07:320933デフォルトの名無しさん
2009/02/09(月) 21:45:55オーバーロードや派生なんてのはクラス設計の時点で決まっているものだから、設計図がきちんとしていればコードを追う必要はないでしょ。
設計図が各人の頭の中にバラバラにあればコードを追わないといけないが。
0934デフォルトの名無しさん
2009/02/09(月) 21:51:440935デフォルトの名無しさん
2009/02/09(月) 21:52:240936デフォルトの名無しさん
2009/02/09(月) 21:55:10果てしない理想主義だな
貴族というか大名というか
世の中の何割の連中がそんな環境でコーディングしてるんだか
0937デフォルトの名無しさん
2009/02/09(月) 21:57:30コーディングも信用できない
プログラミング言語も信用できない
クライアントも信用できない
会社も信用できない
0938デフォルトの名無しさん
2009/02/09(月) 22:05:440939デフォルトの名無しさん
2009/02/09(月) 22:26:130940デフォルトの名無しさん
2009/02/09(月) 22:28:090941デフォルトの名無しさん
2009/02/09(月) 22:29:070942デフォルトの名無しさん
2009/02/09(月) 22:33:25そんなレベルまで設計でやってるのか。
効率わるー。
0943デフォルトの名無しさん
2009/02/09(月) 22:37:32設計図眺めてバグ取れるのか?
0944デフォルトの名無しさん
2009/02/09(月) 22:41:37かといってその時点で設計見直しても後の祭
0945デフォルトの名無しさん
2009/02/09(月) 22:42:160946デフォルトの名無しさん
2009/02/09(月) 22:45:2810年もコード書いてりゃ勘で何とかなるわ。
0947デフォルトの名無しさん
2009/02/09(月) 22:46:060948デフォルトの名無しさん
2009/02/09(月) 22:49:31コーディングレベルは設計いらんだろ。
0949デフォルトの名無しさん
2009/02/09(月) 22:51:47タイピングの段階でのことなら知りませんけどー
0950デフォルトの名無しさん
2009/02/09(月) 23:05:32オーバーロードがどうなってるかとか、派生の関係がわからないとか、そういう次元のバグとりなのか?
それならコードを追わずにクラス図からやり直せ。
0951デフォルトの名無しさん
2009/02/09(月) 23:10:27今日読んだブログに、クラス一個つくるのに承認印が必要だけど、これって誰得って
文句書いてあったな。
0952デフォルトの名無しさん
2009/02/10(火) 00:06:31どこ?
0953デフォルトの名無しさん
2009/02/10(火) 00:09:37「ハンコがないとクラスも作れない」、というのは当たり前で、
気軽にクラスを作れるグダグダ開発がどこでも通じるってのがおかしい
0954デフォルトの名無しさん
2009/02/10(火) 00:10:50http://www.kt.rim.or.jp/~kbk/zakkicho/09/zakkicho0902a.html#D20090206-4
0955デフォルトの名無しさん
2009/02/10(火) 00:18:280956デフォルトの名無しさん
2009/02/10(火) 00:26:210957デフォルトの名無しさん
2009/02/10(火) 00:29:280958デフォルトの名無しさん
2009/02/10(火) 00:32:16信頼度あげても、変わらないんじゃね?
ベテランだったり優秀ならハンコなしでもOKってシステムなら、信頼されてないってことになるけど。
0959デフォルトの名無しさん
2009/02/10(火) 00:36:130960デフォルトの名無しさん
2009/02/10(火) 00:38:490961デフォルトの名無しさん
2009/02/10(火) 00:48:49最初から一気にデザインしてからハンコもらえばいいだけのこと。
単に、オブジェクト指向は全体像を把握せずに端からコーディングしたら破綻するというだけのことで、C++がどうこうという話じゃないね。
0962デフォルトの名無しさん
2009/02/10(火) 00:55:13フレームワークにメソッドやメンバ変数をガシガシ追加して、自分じゃまったくクラス作らない
みたいなスタイルなら可能だけど。
0963デフォルトの名無しさん
2009/02/10(火) 00:57:570964デフォルトの名無しさん
2009/02/10(火) 01:14:05そのままコードに落としこめるくらいまで細かく設計すれば可能だけど、
そういうのってけっきょくコンパイラの機能に頼らずに頭の中で
コーディングしてるのと同じだしな。
0965デフォルトの名無しさん
2009/02/10(火) 01:27:500966デフォルトの名無しさん
2009/02/10(火) 01:32:030967デフォルトの名無しさん
2009/02/10(火) 01:35:160968デフォルトの名無しさん
2009/02/10(火) 02:31:060969デフォルトの名無しさん
2009/02/10(火) 02:47:49プログラムは設計じゃなくて政治だって何度言えば分かるんだ
0970デフォルトの名無しさん
2009/02/10(火) 14:52:14分裂君の言うことだから9割ネタだろうけどさ
0971デフォルトの名無しさん
2009/02/10(火) 15:40:04世間には、優秀なプログラマと、おバカなプログラマがいる。
優秀なプログラマには力を存分に発揮してもらわなければならない。
おバカなプログラマにも、優秀なプログラマの足を引っ張らない
ようにしながら、それなりの仕事をしてもらわなければならない。
C++は、それを実現しやすい点でCよりも優れているのだよ。
0972デフォルトの名無しさん
2009/02/10(火) 15:48:57ちょっと待てwww
Linus以上に成功したプログラマが世界に何人もいると思ってるのか
0973デフォルトの名無しさん
2009/02/10(火) 15:54:32> Linus は頭のいい人間なのに、成功しなかった理由がこれで解った。
完全に間違った事をここまで自信を持って言う奴がいたとは。
0974デフォルトの名無しさん
2009/02/10(火) 15:55:30Linusは技術に精通し全てをプログラミングにつぎこんでも
せいぜい日本人の上の下クラスの生活でしょ?
そういう意味では、世界にはLinus以上に上手くプログラムで成功した奴って何万人もいるんじゃねえの。
0975デフォルトの名無しさん
2009/02/10(火) 15:55:580976デフォルトの名無しさん
2009/02/10(火) 15:59:11お前にとっては 「金 = 成功」 か?
ちっちゃな人間だなお前は。
可哀そうになってきた。
0977デフォルトの名無しさん
2009/02/10(火) 16:10:31メアドも見てやれよ
>>975
だがLinusの作ったOSは世界中いたるところで使われており、その名前は歴史に残った
お前は2chで書き込んでるのが関の山
0978デフォルトの名無しさん
2009/02/10(火) 17:27:40Linux は Linus 一人で作ったわけじゃないし
Apple ][ は Jobs 一人で作ったわけじゃないし
そもそも、殆どは彼らよりも周りの人間が作ったと言えるけども
そんな事とは関係なく成功者なので
奴らはマとして成功したわけじゃない
うん。やっぱ成功の秘訣は大言壮語かも試練。
0979デフォルトの名無しさん
2009/02/10(火) 17:36:45ネタだと逝ってくれ。ツッコミどころありすぎ。
0980デフォルトの名無しさん
2009/02/10(火) 18:19:510981デフォルトの名無しさん
2009/02/10(火) 18:31:210982デフォルトの名無しさん
2009/02/10(火) 18:55:260983デフォルトの名無しさん
2009/02/10(火) 21:55:530984デフォルトの名無しさん
2009/02/10(火) 22:18:34一人で作ったような顔をしているだけだろ。
0985デフォルトの名無しさん
2009/02/10(火) 22:20:430986デフォルトの名無しさん
2009/02/10(火) 22:59:490987デフォルトの名無しさん
2009/02/10(火) 23:00:580988デフォルトの名無しさん
2009/02/10(火) 23:29:34林檎の教祖の片割れ
0989デフォルトの名無しさん
2009/02/10(火) 23:41:50その利益を騙して独占したのがジョブズ
0990デフォルトの名無しさん
2009/02/10(火) 23:50:28本気で言ってる?
もしかして、電話クラックしまくってた誰かと間違えてない?
ウォズって、 測定器しか作ってなかった頃の HP でバイトしてて,
Apple のプロトタイプ作った時に, HP から
「うちはそんなもん作らんから勝手にしろた」
って言われて、スティーブにそそのかされて Apple 立ち上げて
Apple I とか Apple II を設計した人なんだけど…
0991デフォルトの名無しさん
2009/02/10(火) 23:53:03つttp://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%86%E3%82%A3%E3%83%BC%E3%83%96%E3%83%BB%E3%82%A6%E3%82%A9%E3%82%BA%E3%83%8B%E3%82%A2%E3%83%83%E3%82%AF
0992デフォルトの名無しさん
2009/02/11(水) 00:08:44マシン語とニーモニックの区別もつかんのかお前は。
0993デフォルトの名無しさん
2009/02/11(水) 00:52:190994デフォルトの名無しさん
2009/02/11(水) 08:11:15jobsが一番モノ作ってないのは間違いない
元からエンジニアではないし
0995デフォルトの名無しさん
2009/02/11(水) 09:50:210996デフォルトの名無しさん
2009/02/11(水) 13:19:020997デフォルトの名無しさん
2009/02/11(水) 13:37:36使ってみるか。
0998デフォルトの名無しさん
2009/02/11(水) 15:08:51jobs:技術6、評価眼9、魅力9、経営力9
(wozオプションで技術9にアップ)
linus:技術8、評価眼7、魅力6、経営力NA
(OSSオプションで技術と評価能力9にアップ)
gates:技術7、評価眼9、魅力7、経営力9
(allenオプションで能力同じでx2に分身可能に)
ちなみに一般人の限界は5くらいで。
0999デフォルトの名無しさん
2009/02/11(水) 15:27:451000デフォルトの名無しさん
2009/02/11(水) 15:35:0710011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。