C++相談室 part105
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2013/09/29(日) 17:35:25.59ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレに
お願いします。
前スレ
C++相談室 part104
http://toro.2ch.net/test/read.cgi/tech/1376714664/
このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.86【環境依存OK】
http://toro.2ch.net/test/read.cgi/tech/1379742800/
次期規格C++1yはこちら
C++11/C++1y 18
http://toro.2ch.net/test/read.cgi/tech/1365073520/
■長いソースを貼るときはここへ。■
http://codepad.org/
http://ideone.com/
0002デフォルトの名無しさん
2013/09/29(日) 17:53:20.81不快と感じる人がいます
無用な争いを避けるため、hogeの使用はなるべく控えて下さい
0003デフォルトの名無しさん
2013/09/29(日) 18:02:09.23基地外に敗北宣言
0004デフォルトの名無しさん
2013/09/29(日) 18:16:21.88禁止しないって挑発して
荒らされ続けてる方が負けだろ。
0005デフォルトの名無しさん
2013/09/29(日) 18:18:44.45コンピュータやコンパイラが誤動作でもするの?
0006デフォルトの名無しさん
2013/09/29(日) 18:23:07.79日本語読めないの?ばかなの?
「不快と感じる人がいます」
「不快と感じる人がいます」
「不快と感じる人がいます」
「不快と感じる人がいます」
世の中オマエが基準じゃねーんだよバカ
0007デフォルトの名無しさん
2013/09/29(日) 18:26:45.230008デフォルトの名無しさん
2013/09/29(日) 18:28:40.16http://news.mynavi.jp/news/2013/09/27/027/index.html
0009デフォルトの名無しさん
2013/09/29(日) 18:29:31.12hogeって書くだけでいいんだぜ
hogeって
0010デフォルトの名無しさん
2013/09/29(日) 18:40:18.860011デフォルトの名無しさん
2013/09/29(日) 19:10:43.260012デフォルトの名無しさん
2013/09/29(日) 19:15:25.690013デフォルトの名無しさん
2013/09/29(日) 19:22:12.500014デフォルトの名無しさん
2013/09/29(日) 19:46:51.380015デフォルトの名無しさん
2013/09/29(日) 19:58:15.53環境によるだろ。
俺はBorland-C++5.6.2に -D_RTLDLL オプションを指定して、極力
ランタイムを使用するようにして使っているが、例えばstd::vectorを
使っても使わない時と比べ10Kほどしか増えない
すげえ。ダイナミックリンクしといてファイルサイズが増えないとかいってるよ。この人。
C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。
とかいうエラーが出るんだけどこれってどうすればいいの?
#include <stdafx.h>
後死ね。
言葉が悪いな。それで教えているつもりか。
まぁヒントぐらいにはなったな。
うむごくろう。
0016デフォルトの名無しさん
2013/09/29(日) 20:03:56.65スルーすれば良いだけだろが。
hoge使ったコード後に荒らしレスが付いてもそれスルーすれば問題ない。
hoge禁止にしたところで荒らしが正気に戻るわけじゃ無いし、荒らしは荒らしだ。
>>5
禁止することで荒らしが優越感に浸れる。
禁止しろ禁止する必要はないの議論を眺めて荒らしが優越感に浸れる。
そして次の優越感を求めて同じことを繰り返す。
禁止も推奨もせず、荒らしはひたすらスルーすればそれだけで良い。
0017デフォルトの名無しさん
2013/09/29(日) 21:00:16.84うっせえ long unko;
0018デフォルトの名無しさん
2013/09/29(日) 21:00:39.850019デフォルトの名無しさん
2013/09/29(日) 21:07:07.67奴らに基地っぷりはすごすぎるからね
ついでに2chは朝鮮系人のためのたまり場で朝鮮ルールが適用される
0020デフォルトの名無しさん
2013/09/29(日) 23:12:37.190021デフォルトの名無しさん
2013/09/29(日) 23:13:13.010022デフォルトの名無しさん
2013/09/29(日) 23:21:31.150023デフォルトの名無しさん
2013/09/29(日) 23:55:19.32日本人は、やっぱり野蛮ですね
0024デフォルトの名無しさん
2013/09/30(月) 00:21:26.52ここからintを取り出すことって出来るかね
0025デフォルトの名無しさん
2013/09/30(月) 00:22:57.20どういう動作になってほしいわけ?
0026デフォルトの名無しさん
2013/09/30(月) 00:23:42.24取り出しました
0027デフォルトの名無しさん
2013/09/30(月) 00:32:51.220028デフォルトの名無しさん
2013/09/30(月) 00:41:26.95あざっす
0029デフォルトの名無しさん
2013/09/30(月) 00:43:46.15ただ使い所がわかんねえ
0030デフォルトの名無しさん
2013/09/30(月) 00:56:11.02代わりに whale 使えば?
0031デフォルトの名無しさん
2013/09/30(月) 00:59:07.23↓みたいに
template <typename T>
typename T::value_type Foo(T v)
{
0032デフォルトの名無しさん
2013/09/30(月) 01:04:22.91まあ使い所はわかった
0033デフォルトの名無しさん
2013/09/30(月) 01:05:59.03捕鯨は悪いことという前提を、我々は承認していません。
ストレートに2点お尋ねします。
・なぜ鯨を殺してはいけないのですか?
・なぜ人を殺してはいけないのですか?
殺してはいけないから、殺してはいけない、というような循環論法は相手をしません。
客観的な、つまりは敵対的な論客を論破できる、簡潔明瞭な説明を求めます。
2点目に、水も漏らさぬ完全な論理がないことは、つまり
より制限の厳しい1点目に答えられるわけがないと見なします。
0034デフォルトの名無しさん
2013/09/30(月) 01:27:09.82「自分が人から危害を受けたくなければ、誰にも危害を加えないことである。」(ムハンマドの遺言)
ユダヤ教
「あなたにとって好ましくないことをあなたの隣人に対してするな。」
(ダビデの末裔を称したファリサイ派のラビ、ヒルレルの言葉)、
「自分が嫌なことは、ほかのだれにもしてはならない」(『トビト記』4章15節)
ヒンドゥー教
「人が他人からしてもらいたくないと思ういかなることも他人にしてはいけない」(『マハーバーラタ』5:15:17)
イエス・キリスト
「人にしてもらいたいと思うことは何でも、あなたがたも人にしなさい」(『マタイによる福音書』7章12節)
「他人にしてもらいたいと思うような行為をせよ」という内容の倫理学的言明
黄金律(おうごんりつ、英: Golden Rule)
Wikipedia
0035デフォルトの名無しさん
2013/09/30(月) 01:29:25.10横レスですが、新日本クジラ研究会です。
クジラを殺すことが悪いのではなく、クジラが減る環境は人類の生存確率が
減る環境だからです。
つまり、人類を存続させるためにクジラを保護しようとしています。
クジラはある意味目安にすぎません。
大型であり、環境にナイーブであり、人類と同じ哺乳類です。
そもそも、環境保護は人類のエゴに基づく行動です。
もしも神様と通信できたなら、今すぐ環境保護をやめろと言われるでしょう。
いずれ人類が滅び、新しい種が覇権を握るのが自然の摂理だからです。
あなたは鯨を滅ぼしますか?
0036デフォルトの名無しさん
2013/09/30(月) 01:31:06.030037デフォルトの名無しさん
2013/09/30(月) 01:32:49.42たった今できました。
会員は僕一人です。
0038デフォルトの名無しさん
2013/09/30(月) 01:35:18.80滅ぼすのはダメだろう。でも必要に応じて殺傷し食べるのは問題ないだろう
死刑のように、必要に応じて人間を殺しても問題ないのと同じでクジラも必要に応じて殺傷してよいはずだ
0039デフォルトの名無しさん
2013/09/30(月) 01:36:29.380040デフォルトの名無しさん
2013/09/30(月) 01:37:28.41殺さずに肉だけ食べるなら問題ないはず
自分で肉を切り取ってもらえば傷害罪にも該当しないだろう
0041デフォルトの名無しさん
2013/09/30(月) 01:57:11.61「減る」とはどのくらいですか?
たとえばミンククジラは、総量に対してどのくらいがバランスよい負荷でしょうか?
研究職の方でしたらおわかりでしょうが、生物の「誕生」と「死」のバランスを崩すと
結果が絶滅あるいは異常発生、食物連鎖間に波及ということが起きます。
人類への影響もこの「波及」に含まれます。
ミンククジラの、全量はどのくらいで、年あたりどのくらい誕生し死すのが理想ですか?
全量は現状どのくらいで、年あたりどのくらい誕生し死んでいますか?
理想と現実の差はどうなっていますか?
追試可能の定量的な数値でお答え下さい。普通の人には聞けませんが、あなたは研究者。
死すべき量を人為的に本来より増やし、その差分をいただくのが養殖です。
いけすを使うか、海洋そのものを使うか、発育段階で切り替えるか、それは様々です。
この点で、養豚場の屠畜と、捕鯨は、何が違いますか?
あなたは人類を餓死させますか?
0042デフォルトの名無しさん
2013/09/30(月) 02:08:27.62申し訳ありません。
研究会は5分前に解散いたしました。
僕は今ではただの人なのです。
ただの人としてで良ければ会話に参加させていただきたいと思います。
僕は以前からずっと不思議だったのです。
西洋の人たちは自然に生きる生物を殺して食べることを野蛮でかわいそうといいます。
しかし、飼育した生物を殺して食べるのは当然と考えます。
日本人である僕には納得がいきませんでした。
食べられるために生まれてくるほうがずっと残酷です。
ところが、日本でいう建前と本音に基づき考えるとどうでしょう。
可愛そうというのが建前で、本音は利己主義です。
つまりすべてが自己の利益のための行動だったら。
家畜は殺しても生態系への影響がない。
つまり食べていいのです。
飼育して食べるのは人類の存続可能性という点でエコロジーなのです。
0043デフォルトの名無しさん
2013/09/30(月) 02:09:41.480044デフォルトの名無しさん
2013/09/30(月) 02:49:33.54解散されたのですか、それは大変でしたね。
で、解散された事実はどこかに公示または報道されていますか?
いい加減なこと言われたら困りますよ! (これが失礼なら反駁して下さい)
北米大陸で太古から自然に生きてきたネイティブを食べもせずに(そう信じていますが)
殺すのは可哀想ではないんですかね、あの人たちには。
アフリカ大陸で太古から自然に生きてきたネグロイドを食べもせずに
殴打・致死させるのは可哀想ではないんですかね、あの人たちは。
日本列島で太古から自然に生きてきた黄色い猿の非戦闘員を
焼夷弾と原子爆弾で焼き殺すのは可哀想ではないんですかね。
ベトナムで枯れ葉剤を使って見るも無惨な子供が大勢理不尽になくなりました。
これらすべてがキリスト教の神が命じたことなら、
イエスは悪魔でキリスト教はカルト教団です。
アメリカは我が国以上に大量の鯨を殺害し、不要部分を捨てていました。
我が国の捕鯨産業は「捨てるところがない」ことを誇っていました。
ビキニ環礁の水爆でどのくらいの鯨が死んだのかご存知ですか?
■ 可 哀 想 で は な か っ た ん で す か ! ? ■
もう一度聞きます。
鯨は可哀想なのか減るのか、もはや論点が二転三転しています。
あなたがたは結局、牛肉を売りつけたいだけじゃないんですか?
動物質だけではありません。モンサントの脅威も我々は警戒しています。
「元」研究者さん、あなたが失職した本当の理由は何でしょうかね? これは皮肉です
0045デフォルトの名無しさん
2013/09/30(月) 03:16:46.86可愛そうなのか減るのか、そして宗教との関連。
実はこのことについても考えたことがあるのです。
ところでもう寝るので、続きは明日帰ってきてから書きたいと思います。
0046デフォルトの名無しさん
2013/09/30(月) 03:58:05.87おまえが飼ってる犬でも猫でもインコでも、食ってからのコメントが聞きたい
本当にそれが当然で、野生動物を殺すことよりも理性的なのか
イエスさんが、そうしろと命じたのかどうか?
アインシュタインは言った「月は私が見ているときにしか、そこにないのかね」と
あなたたちはイエスがそう命じるから、1秒まえまでの家族の血肉をすするのか
ジョークでしたじゃ済まんぞ
おのれら原爆を悔いるどころか誇っとんのやろ
で、イランや北朝鮮が同じことをするのはいかんのやったなあ
高出力型の弾頭が散布界の小ささによって役割を失うのは周知の事実や
「元」研究者とはいえ、勤続年数まで5秒とは言わんだろう
まともな答えをせにゃ、ここには「フルボッコされたカス」と記録されるだけやぞ
身元も割れやすくなってるから、お得意さんにも迷惑かかるわなあ
このへんの感覚が壊れてるやつを俺は人間と思っていない
0047デフォルトの名無しさん
2013/09/30(月) 04:03:41.420048デフォルトの名無しさん
2013/09/30(月) 04:15:39.95荒らしがふせげるのーお? ねーぼーやあ
ぼーやみたいな情弱がだまったからって何にどう役立つのかねー
君も京大の霊長類研究所の方だろ、察するにwww
0049デフォルトの名無しさん
2013/09/30(月) 06:15:39.66>>44
>家畜は殺しても生態系への影響がない。つまり食べていいのです。飼育して食べるのは人類の存続可能性という点でエコロジー
◎85点
0051デフォルトの名無しさん
2013/09/30(月) 07:36:11.130052デフォルトの名無しさん
2013/09/30(月) 08:38:36.25なんでキモい言われたか気付いてないんだろ?
だっせw
0053デフォルトの名無しさん
2013/09/30(月) 09:07:38.30家畜って育てるだけで環境負荷が結構あったよね。
温室効果ガスとしてのメタンは家畜の牛が結構な量を排出してたはず。
0054デフォルトの名無しさん
2013/09/30(月) 10:32:37.70必要なら別に出してもいいだろバーカ
0055デフォルトの名無しさん
2013/09/30(月) 10:41:47.10ここはム板だ
プログラム以外の話をしたいのなら他の板に行け
0056デフォルトの名無しさん
2013/09/30(月) 10:47:03.26だっせw
0057デフォルトの名無しさん
2013/09/30(月) 11:19:51.350058デフォルトの名無しさん
2013/09/30(月) 11:32:23.30A(void)
{}
}
と
class B{
B(void)
{}
}
の違いを教えてください
0059デフォルトの名無しさん
2013/09/30(月) 11:33:20.19class A
{
A)
{
}
}
と
class B
{
B(void)
{
}
}
の違いです
0060デフォルトの名無しさん
2013/09/30(月) 11:53:52.51何も違わない
0061デフォルトの名無しさん
2013/09/30(月) 12:19:55.13書き込むボタンを押す前に3回冷水をかぶれ
0062デフォルトの名無しさん
2013/09/30(月) 17:12:50.85hoge hoge_(); とすると関数宣言との区別がつかないためエラーになると思いますが、
コンパイラあるいはC++の規格によってはエラーにならない場合もあるのでしょうか?
0063デフォルトの名無しさん
2013/09/30(月) 17:27:41.790064デフォルトの名無しさん
2013/09/30(月) 17:54:48.21そんなコンパイラあるの?
0065デフォルトの名無しさん
2013/09/30(月) 18:01:17.300066デフォルトの名無しさん
2013/09/30(月) 18:30:43.40VC++6だとコンパイル通らなかったけど・・・
http://ideone.com/p9KSV8
0067デフォルトの名無しさん
2013/09/30(月) 19:12:06.39ありがとうございます!
0068デフォルトの名無しさん
2013/09/30(月) 20:14:51.16自己解決、C++11ならOKなのね
0069デフォルトの名無しさん
2013/09/30(月) 20:51:11.15とりあえずここに書きます。
環境: eclipse Juno + CDT
症状: 構造体のメンバーが同じメモリアドレスを参照する
typedef struct test_s{
char* errorCode;
char* attrib[MaxNum];
char users[buffSize];
char data[buffSize];
char DN[MaxHeaderByte];
char CN[MaxHeaderByte];
// char hogehoge[buffSize];
}TEST_S;
上記のような構造体を作り、インスタンス化すると、
DNとCNの参照先メモリアドレスが同一になり、CNを変えるとDNも変わります。
そもそも、そんなことってあり?
構造体で宣言した直後で確認をとっておりますので、DNにCNのポインタが入るなどの行為は
行われていないはずです。
だれか助けてください
補足:
その直前に意味不明なsegmentation fail が起こっておりました。
確実に問題のないインタネット上のサンプルでも( たとえば、初心者向けstrcpy のサンプルコード)
などでも、がんがんprintf あたりで発生してました。現在はなぜだか直っている模様
0070デフォルトの名無しさん
2013/09/30(月) 20:53:50.250071デフォルトの名無しさん
2013/09/30(月) 20:55:49.730072デフォルトの名無しさん
2013/09/30(月) 21:00:51.46コードは問題ないね
http://codepad.org/trifD8VE
0073デフォルトの名無しさん
2013/09/30(月) 21:21:28.50>>72
ありがとう。
VC++では問題無しです
まあ、なんだかって感じですが
//順番変えただけ
char* errorCode;
char* attrib[MaxNum];
char CN[MaxHeaderByte];
char users[buffSize];
char data[buffSize];
char DN[MaxHeaderByte];
だとうまくいくw
プログラムでも同じ症状なので、コンパイラあたりが匂うけど、
デバッガではないような気がします
ライブラリってことはないとは思うんですが、
segumentation 違反のこともあるので、うむむです。
0074デフォルトの名無しさん
2013/09/30(月) 21:25:21.440075デフォルトの名無しさん
2013/09/30(月) 22:51:16.28調べた。
なるほどです。
POSIXではなく、Windowsアプリなんだけど、関係ないとも言い切れないですねぇ
コンパイルオプションかなんかで指定するんでしょうか?
0076デフォルトの名無しさん
2013/09/30(月) 23:09:08.19定数の値はどうなってるの?gccならサイズ0の配列を定義可能だぞ
0077デフォルトの名無しさん
2013/09/30(月) 23:57:43.90ちょいと大きめです。
4096を基本で実行しているんですが
それでもエラーが出ます。
本来なら64kbyte程度は取りたいと思っていますが、
0078デフォルトの名無しさん
2013/10/01(火) 00:00:07.41コンパイラ何使ってんの?
0079デフォルトの名無しさん
2013/10/01(火) 00:07:49.260080デフォルトの名無しさん
2013/10/01(火) 00:43:39.990081デフォルトの名無しさん
2013/10/01(火) 01:10:47.14クリーンは、これでもか、ってほどやってる
>>79
なる
ちょっとやってみる
>>78
MinGW のgcc
0082デフォルトの名無しさん
2013/10/01(火) 01:54:39.43#define MaxHeaderByte 0
0083デフォルトの名無しさん
2013/10/01(火) 01:58:33.95sizeof(TEST_S)
この2つを見てからでないと信用出来ないw
008462
2013/10/01(火) 02:04:29.37え、エラーにならないってことですか?
コンパイラはGCC4.7.2ですが、以下のコードは最初の�@が何も出力されません。
関数宣言とみなされるからだと思ってたんですが、違うのですか?
#include <iostream>
using namespace std;
class hoge
{
public:
hoge() { cout << "hoge" << endl; }
hoge(int i) { cout << "hoge(int i)" << endl; }
};
int main()
{
hoge obj1(); // �@何も出力されず
hoge obj2; // �Ahoge と出力
hoge obj(1); // �Bhoge(int i) と出力
}
0085デフォルトの名無しさん
2013/10/01(火) 02:40:08.27008662
2013/10/01(火) 03:14:41.22実は人からもらったソースコードをいじってて、引数なしのコンストラクタを hoge obj1();
などとインスタンス化するとよく分からないコンパイルエラーになり、調べてみた次第です。
というわけで、質問を以下のように変更させてください。
「引数なしのコンストラクタを呼んでインスタンス化する際は、 hoge obj1(); などと
()を付けては駄目で、単に hoge obj1; とする」というのは、C++の仕様でしょうか?
0087デフォルトの名無しさん
2013/10/01(火) 07:05:31.35"C++の"とか言う割に、new使うって発想ないんだなあ
何がやりたいんだろう
0088デフォルトの名無しさん
2013/10/01(火) 07:21:32.710089片山博文MZコスモ ◆T6xkBnTXz7B0
2013/10/01(火) 07:27:53.390090デフォルトの名無しさん
2013/10/01(火) 07:50:26.31当たり前だろ。バカ。
コンパイラはお前より一億倍C++の仕様に詳しいので、コンパイラがエラーを出すなら、
それはC++の規格違反である可能性が極めて高い。
0091デフォルトの名無しさん
2013/10/01(火) 07:55:24.14今時 C++ で生 new なんてほとんど使わないと思うが...
0092デフォルトの名無しさん
2013/10/01(火) 08:34:48.970093デフォルトの名無しさん
2013/10/01(火) 09:31:15.10非対称な感じでイヤーンな人は不満解消すんじゃね?w
0094デフォルトの名無しさん
2013/10/01(火) 09:54:46.420095デフォルトの名無しさん
2013/10/01(火) 10:20:59.25誰もhoge使うような気違いにはきいてないから
hoge厨は黙ってろ
0096デフォルトの名無しさん
2013/10/01(火) 10:58:08.300097デフォルトの名無しさん
2013/10/01(火) 11:05:34.77よう恥知らず。
0098デフォルトの名無しさん
2013/10/01(火) 11:18:11.27そもそもC++11で書いてる人が殆どいない気がする。
でも、C++11が当たり前になったら初期化子といえば{}ってくらい定着すると思う。
初期化子リストとも統一感あるし、見目麗しいじゃないかw
0099デフォルトの名無しさん
2013/10/01(火) 11:24:22.530100デフォルトの名無しさん
2013/10/01(火) 11:25:12.87hogeもそんな書き方してるのもお前だけだよ
他と違う俺カッケーとか思ってんの?
0101デフォルトの名無しさん
2013/10/01(火) 11:32:37.96C++14が出る頃にはC++11も使われてるかもな
0102デフォルトの名無しさん
2013/10/01(火) 12:31:21.43半角にして登録してください。
0103デフォルトの名無しさん
2013/10/01(火) 12:51:49.940104デフォルトの名無しさん
2013/10/01(火) 13:03:39.27全角で書く意味がわからん
0105デフォルトの名無しさん
2013/10/01(火) 13:23:09.92半角で書いたら>>102もNGされてしまう
0106デフォルトの名無しさん
2013/10/01(火) 13:23:18.19別にこだわりもないし。
くだらんことでスレ使うなよ
0107デフォルトの名無しさん
2013/10/01(火) 13:24:44.390108デフォルトの名無しさん
2013/10/01(火) 13:32:09.91メタ構文変数ならmetakoubunhensuと書けよ
0109デフォルトの名無しさん
2013/10/01(火) 13:40:45.820110デフォルトの名無しさん
2013/10/01(火) 14:18:03.47意味が分からないってそう意味じゃないと思う。
特定の使用目的のない部屋の入り口のドアに「hoge」って書いてあったら意味が分からないだろう、
だとしたらそこは「空き部屋」と書いておくべきだ。
特定の使用目的がないのならそのことを明示しておかなければならない。
0111デフォルトの名無しさん
2013/10/01(火) 16:10:57.250112デフォルトの名無しさん
2013/10/01(火) 16:14:06.760113デフォルトの名無しさん
2013/10/01(火) 16:35:31.68意味が分からない物をどうやって使うんだ?
識別子を付与して再利用してる時点で中身の意味はわかってるだろう
0114デフォルトの名無しさん
2013/10/01(火) 16:43:26.95obj2.insert(obj1.begin(), obj1.end());
0115デフォルトの名無しさん
2013/10/01(火) 16:53:44.45ありがとうございます。
C++10のマニュアル(chm形式)がダウンロードできる場所を教えて下さい。
0116デフォルトの名無しさん
2013/10/01(火) 17:52:18.010117デフォルトの名無しさん
2013/10/01(火) 21:36:10.34どうしても構っちゃうよ!って奴はNGにでもしとけ。
0118デフォルトの名無しさん
2013/10/01(火) 22:14:19.56お前に命令される筋合いはない
0119デフォルトの名無しさん
2013/10/01(火) 22:28:53.88お手!
0120デフォルトの名無しさん
2013/10/01(火) 22:53:41.01いや、だから >>102 を NG してる奴が >>102 見る必要あるんか?
0121デフォルトの名無しさん
2013/10/01(火) 23:04:21.41house
0122デフォルトの名無しさん
2013/10/01(火) 23:36:20.140123デフォルトの名無しさん
2013/10/01(火) 23:41:30.56お座り!
0124デフォルトの名無しさん
2013/10/02(水) 00:13:16.71初期化子リストと統一感あるから困るところもあるけど
まあそんなもんか
0125デフォルトの名無しさん
2013/10/02(水) 02:31:12.95仕事ではお目にかかったことないわ
0126デフォルトの名無しさん
2013/10/02(水) 02:43:39.10C++0x以上C++11未満をサポートしてるなんて場合、何がOKで何がNGなのかこんがらがったり
しないんだろうか?
0127デフォルトの名無しさん
2013/10/02(水) 02:50:13.640128デフォルトの名無しさん
2013/10/02(水) 03:08:07.65悩んだらC++0xも封印してC++03とかで書けば良いんでない?
仕事のプロジェクトではC++0x〜C++11とか全員が把握してる保証がないと厳しいし、
C++0xっていう策定段階の仕様を業務でバリバリ使うってのも違和感があるんだが。
# そして只のC+αな言語として使われる、と。
0129デフォルトの名無しさん
2013/10/02(水) 03:16:33.210130デフォルトの名無しさん
2013/10/02(水) 03:22:52.70だからなにが良くてなにが悪いかはコンパイラ様が教えてくれる。
混乱などしない。黙ってコンパイラ様のいうことを聞いてればいいw
0131デフォルトの名無しさん
2013/10/02(水) 13:06:28.47おまえらスルーなの?
0132デフォルトの名無しさん
2013/10/02(水) 14:02:02.730133デフォルトの名無しさん
2013/10/02(水) 14:10:10.89C++11のサポート不完全なままだし、VSスレでもう散々愚痴った後だし('A`)
0134デフォルトの名無しさん
2013/10/02(水) 19:04:55.080135デフォルトの名無しさん
2013/10/02(水) 19:17:08.640136デフォルトの名無しさん
2013/10/02(水) 22:03:51.87C++とC#でどちらにしようか決めかねています
C#の方が簡単みたいでいずれ.netもOSと統合するとかなんとか
今後C#の方が需要が高くなるんでしょうか?
私としてはC++の方が汎用性もあっていいと思うのですが
今後の事を考えたらどっちがいいのかなぁ?
0137デフォルトの名無しさん
2013/10/02(水) 22:05:49.830138デフォルトの名無しさん
2013/10/02(水) 22:34:26.40単にそういうもんだと思って使うだけの話ですか?
0139デフォルトの名無しさん
2013/10/02(水) 22:35:55.120140デフォルトの名無しさん
2013/10/02(水) 23:14:41.04非常に有用な機能
0141デフォルトの名無しさん
2013/10/02(水) 23:22:17.380142デフォルトの名無しさん
2013/10/03(木) 00:27:18.93C++を汎用性がーという理由で使うと汎用性以前にバグとメモリリークで死ぬ
C++の生きる領域は、大規模開発するけど、どうしてもパフォーマンスに妥協できないという場面
C#は素人に優しくプロに便利だが、実質Microsoft縛りだし、
パフォーマンスは限界がある
生産性と安全性はC++と比べてはいけないレベル
C++/CLIは現実と戦いすぎなのでさっさと滅びろ
>>138
多重継承が最適解な特定の問題領域でだけ、ちょっと困る
普段は気にもしない
0143デフォルトの名無しさん
2013/10/03(木) 00:33:39.96メモリリークはスマポ使えばいいじゃない
0144デフォルトの名無しさん
2013/10/03(木) 02:42:10.650145デフォルトの名無しさん
2013/10/03(木) 02:52:46.250146デフォルトの名無しさん
2013/10/03(木) 03:32:41.000147デフォルトの名無しさん
2013/10/03(木) 03:58:44.990148デフォルトの名無しさん
2013/10/03(木) 05:50:48.07サーチ部分を以下の用に組んだのですがどうしても遅くなってしまいます
高速でメモリサーチするにはどうしたらいいんでしょうか
--------------------------------------------
DWORD Address = 0x2AF00000; //検索開始アドレス
INT i; //ループ用
DWORD MemoryBuff;
for(i=0;i<10000000;i++)
{
ReadProcessMemory(hProc, (LPVOID)(Address+i), &MemoryBuff, 4, NULL);
if (MemoryBuff == 0xD6FA88){
cout <<Address+i << endl;
}
}
0149デフォルトの名無しさん
2013/10/03(木) 08:30:07.19std::function や boost::function を使う。
0150デフォルトの名無しさん
2013/10/03(木) 09:29:23.67質問主じゃないけど、できたわサンクス。勉強になった
http://ideone.com/o2Ltut
0151デフォルトの名無しさん
2013/10/03(木) 09:34:41.90目的がわからないから何とも言えんが、
WindowsならAPIで特定の種類の使用領域一覧を頂いてから、
狙い撃ちで検索するとか。
詳細がほしいならWin32APIスレでどーぞ。
0152デフォルトの名無しさん
2013/10/03(木) 10:41:00.520153デフォルトの名無しさん
2013/10/03(木) 11:28:32.620154デフォルトの名無しさん
2013/10/03(木) 18:28:15.10function使わなくてもいいなそれ
http://ideone.com/sW0Bom
0155デフォルトの名無しさん
2013/10/03(木) 22:44:22.60なんでtestの実装を隠蔽してんだよcall_eachの実装を隠蔽しろよw
0156デフォルトの名無しさん
2013/10/04(金) 05:22:43.97call_each_impl いらなくね?
0157デフォルトの名無しさん
2013/10/04(金) 07:01:03.37??
0158デフォルトの名無しさん
2013/10/04(金) 12:26:59.84> ファンクタを受けとる関数はヘッダに公開しないといけないのですか? 公開しないで隠蔽する何かいい方法ありませんか?
154はファンクタを受けとる関数(call_each)がテンプレート関数として公開されてる。
0159デフォルトの名無しさん
2013/10/04(金) 12:29:10.770160デフォルトの名無しさん
2013/10/04(金) 12:37:12.070161片山博文MZコスモ ◆T6xkBnTXz7B0
2013/10/04(金) 17:51:19.58https://dl.dropboxusercontent.com/u/72753355/cppreference-20111225.zip
0162デフォルトの名無しさん
2013/10/04(金) 17:56:22.870163デフォルトの名無しさん
2013/10/04(金) 18:10:53.850164デフォルトの名無しさん
2013/10/04(金) 19:34:18.24http://en.cppreference.com/w/Cppreference:Archives
0165デフォルトの名無しさん
2013/10/04(金) 20:04:08.320166片山博文MZコスモ ◆T6xkBnTXz7B0
2013/10/04(金) 21:34:39.440167デフォルトの名無しさん
2013/10/04(金) 22:28:36.41つーか隔離スレから出てくるな
0168デフォルトの名無しさん
2013/10/04(金) 22:40:31.100169デフォルトの名無しさん
2013/10/04(金) 23:05:46.250170デフォルトの名無しさん
2013/10/05(土) 00:48:50.930171デフォルトの名無しさん
2013/10/05(土) 03:11:38.23int bar();
があったとして、
foo(&bar());
はテンポラリアドレスアクセス?
void foo(const int& a);
にして
foo(bar());
にすれば安全?
0172デフォルトの名無しさん
2013/10/05(土) 03:29:19.42後者の質問はYes
0173デフォルトの名無しさん
2013/10/05(土) 03:32:40.13void foo(const int* p)
{
printf("%d",*p);
}
int bar(){return 0;}
foo(&bar());
とか?
0174デフォルトの名無しさん
2013/10/05(土) 03:50:40.080175デフォルトの名無しさん
2013/10/05(土) 11:35:39.280176デフォルトの名無しさん
2013/10/05(土) 12:26:33.49自己紹介乙w
0177デフォルトの名無しさん
2013/10/05(土) 16:08:02.950178デフォルトの名無しさん
2013/10/05(土) 16:11:31.95C++の標準がClangの状況でVCって奴は非常にすくないからな
Winの標準のC#でやれば良いのにな
0179デフォルトの名無しさん
2013/10/05(土) 16:13:03.110180デフォルトの名無しさん
2013/10/05(土) 16:21:41.79祖国に帰れば良い
0181デフォルトの名無しさん
2013/10/05(土) 16:31:39.71>日本語の意味がわからない
日本人なら意味が分らないってレスだけど
在日人のhoge基地は"日本語の意味"ってなるからな。
日本語って書く時点で在日だし。
0182デフォルトの名無しさん
2013/10/05(土) 16:35:16.33お前が在日という事は良く分かった
だから帰れ
0183デフォルトの名無しさん
2013/10/05(土) 16:43:06.860184デフォルトの名無しさん
2013/10/05(土) 16:43:50.07朝鮮人www
0185デフォルトの名無しさん
2013/10/05(土) 17:02:49.04>日本語の意味がわからない
ではなく
意味がわからない
って書くよな。
つまり>>179は日本語を母国語としな人ってことだよな
0186デフォルトの名無しさん
2013/10/05(土) 17:05:14.26じゃなくて
日本語として成立しているように思えない
ってことだろ
0187デフォルトの名無しさん
2013/10/05(土) 17:06:22.89マネーマネーマネー
0188デフォルトの名無しさん
2013/10/05(土) 17:11:06.290189デフォルトの名無しさん
2013/10/05(土) 17:11:10.35これはどういう意味なんだ?
0190デフォルトの名無しさん
2013/10/05(土) 17:12:55.56在日には理解できない。知り合いの日本人に聞いてね
0191デフォルトの名無しさん
2013/10/05(土) 17:16:41.350192知り合いの日本人
2013/10/05(土) 19:39:20.920193デフォルトの名無しさん
2013/10/05(土) 20:22:20.330194デフォルトの名無しさん
2013/10/05(土) 20:26:51.280195デフォルトの名無しさん
2013/10/05(土) 21:49:37.390196デフォルトの名無しさん
2013/10/05(土) 22:07:16.66日本語が駄目な在日、基地外、低脳でもなれるって
どうしてこうなったんだ
0197デフォルトの名無しさん
2013/10/06(日) 02:00:07.69それ漢字間違ってるから
0198デフォルトの名無しさん
2013/10/06(日) 06:14:08.020199デフォルトの名無しさん
2013/10/06(日) 10:58:51.99sqlserverを操作したいのですが、ado.net関連の参考サイトしか見つからずにいます
主にsqlserverに接続して大量のデータを更新したいと思っています。
sqlserverにあるテーブル同士ではなく、別の場所にあるaccessにローカルテーブルとして
データを持っているので、accessからデータを取ってきて
一件ずつ更新する方法しかないのかと思っているのですが、
何かいい方法がありますでしょうか?
sql narive client なるものがあるようですが、
実際ado.netを使わない場合、どのような手法がとられているのでしょうか?
0200デフォルトの名無しさん
2013/10/06(日) 11:01:16.490201デフォルトの名無しさん
2013/10/06(日) 13:37:41.80ODBCじゃだめなの?
0202デフォルトの名無しさん
2013/10/06(日) 18:15:31.64ここの連中はLinux板のくだ質住民の爪の垢でも煎じて飲めばいいよ
0203デフォルトの名無しさん
2013/10/06(日) 18:25:29.27これらのスレ見るとプログラムやっている奴には基地が多いって実感する
0205デフォルトの名無しさん
2013/10/06(日) 23:20:54.33ID漏れの一件以来、ニュー速あたりからタバンに大勢逃げ込んでる。
0206デフォルトの名無しさん
2013/10/07(月) 09:16:37.37他板の読み間違い?
0207デフォルトの名無しさん
2013/10/07(月) 09:36:51.370208片山博文MZコスモ ◆T6xkBnTXz7B0
2013/10/07(月) 13:14:10.39https://dl.dropboxusercontent.com/u/72753355/cppreference-20130510-0.zip
0209デフォルトの名無しさん
2013/10/07(月) 14:37:17.13をブクマークしとけばいいだけの話
0210デフォルトの名無しさん
2013/10/07(月) 15:21:39.590211デフォルトの名無しさん
2013/10/07(月) 15:39:30.63それより日本語訳しろよ
0212デフォルトの名無しさん
2013/10/07(月) 15:56:56.470213デフォルトの名無しさん
2013/10/07(月) 16:07:28.48Qなんか本当に糞だぞ
0214デフォルトの名無しさん
2013/10/07(月) 16:35:02.37さらに両方を縦繋ぎにできれば和訳で大筋を掴んでから英語を読むという素敵なことができる
0215デフォルトの名無しさん
2013/10/07(月) 18:41:55.75片基地外、chmにして勝手に不特定多数に配布してよいのか
0216デフォルトの名無しさん
2013/10/07(月) 19:10:43.740217デフォルトの名無しさん
2013/10/07(月) 19:26:53.400218デフォルトの名無しさん
2013/10/07(月) 19:27:41.060219デフォルトの名無しさん
2013/10/07(月) 19:29:33.43基地外晒し上げ
0220デフォルトの名無しさん
2013/10/07(月) 19:54:05.94タリバンに見えた
0221デフォルトの名無しさん
2013/10/07(月) 22:46:26.230222デフォルトの名無しさん
2013/10/08(火) 06:32:20.54C++11より導入された<thread>のsleep_for()は精度的にはどんなもんでしょうか
精度を気にするならマルチスレッドにしてもnanosleep()のほうが無難ですかね
ちなみに環境はlinux(art-linuxというリアルタイムOS)を利用しています
別スレのほうが適していれば誘導お願いします
0223デフォルトの名無しさん
2013/10/08(火) 06:49:01.480224デフォルトの名無しさん
2013/10/08(火) 07:00:38.720225デフォルトの名無しさん
2013/10/08(火) 08:13:27.03各APIの精度って時点で環境依存だしコンパイラでは把握できないだろ。
リアルタイム用途ならAPIリファレンス読んで自分で選べば良いかと。
0226デフォルトの名無しさん
2013/10/08(火) 08:56:58.23>コンパイラでは把握できない
why?
0227デフォルトの名無しさん
2013/10/08(火) 09:29:25.52{
enum{ foo = 111 };
};
hoge h;
char c[ h.foo ];
int main()
{
hoge o;
char d[ o.foo ];
}
gccだとcがダメでdがOKでした
vc2010だとcもdもOKでした。どれが正しいですか
0228デフォルトの名無しさん
2013/10/08(火) 09:34:16.300229デフォルトの名無しさん
2013/10/08(火) 09:41:42.690230デフォルトの名無しさん
2013/10/08(火) 09:44:22.76正規の情報源で聞けば
ttp://www.dh.aist.go.jp/jp/research/assist/ART-Linux/
ttp://sourceforge.net/projects/art-linux/
0231デフォルトの名無しさん
2013/10/08(火) 09:44:45.51なぜ配列の大きさを
hoge::foo
にしないの?
0232デフォルトの名無しさん
2013/10/08(火) 09:47:16.89しないからです
0233デフォルトの名無しさん
2013/10/08(火) 12:04:36.46std::thread th(func);
}
等とすると折角建てたスレッドの変数が
スコープを抜けると共に死んでしまうので困っています
スレッドを建てるかどうかを選択するのが目的です
どうするのが正解なんでしょうか
0234233
2013/10/08(火) 12:22:45.29std::thread th;
if(){
std::thread tmp(func);
th=std::move(tmp);
}
としていますが、もっとスマートな方法ないですかね
0235デフォルトの名無しさん
2013/10/08(火) 12:30:35.210236デフォルトの名無しさん
2013/10/08(火) 12:41:58.452chなら
ttp://engawa.2ch.net/test/read.cgi/linux/1270842134/
ttp://uni.2ch.net/robot/
0237デフォルトの名無しさん
2013/10/08(火) 14:08:08.56↑
hoge厨の典型例
エラーすら貼らずに質問する知能の低さ
0238デフォルトの名無しさん
2013/10/08(火) 14:19:00.14お前生きてるだけで迷惑なんだからせめて回線切って引きこもってろよ。
0239デフォルトの名無しさん
2013/10/08(火) 14:32:11.52左様か
0240デフォルトの名無しさん
2013/10/08(火) 16:36:18.55なんだ、>>233じゃなくて変数が氏ぬのか
つまんね
0241デフォルトの名無しさん
2013/10/08(火) 16:38:13.450242デフォルトの名無しさん
2013/10/08(火) 16:55:40.65DQNが車高下げて爆音で音楽かける傾向があるように
hoge使いは馬鹿な傾向があるの?
0243デフォルトの名無しさん
2013/10/08(火) 17:16:30.02if (hage)
th.reset(new thread(func));
0244デフォルトの名無しさん
2013/10/08(火) 17:30:44.70お前もう来なくていいよ
0245デフォルトの名無しさん
2013/10/08(火) 17:46:58.60基地外・馬鹿だからhogeを使っている
これは遺伝子に組み込まれた特性。本人はどうすることもできないし、治療もできない
0246デフォルトの名無しさん
2013/10/08(火) 18:30:34.71よく分からずにあんな本をつかまされる初学者が可哀想。
0247デフォルトの名無しさん
2013/10/08(火) 19:26:10.750248デフォルトの名無しさん
2013/10/08(火) 19:56:50.940249デフォルトの名無しさん
2013/10/08(火) 20:10:55.910250デフォルトの名無しさん
2013/10/08(火) 20:23:19.60せめてunique_ptr使えや
0251デフォルトの名無しさん
2013/10/08(火) 20:25:36.53そうなのか
0252デフォルトの名無しさん
2013/10/08(火) 20:28:47.070253デフォルトの名無しさん
2013/10/08(火) 20:32:19.42自己レス
C++11以降ね
0254デフォルトの名無しさん
2013/10/08(火) 20:59:26.52本屋で本漁ってるとちょくちょく見かける
本の質は・・・・言わなくても分かるなw
0255デフォルトの名無しさん
2013/10/08(火) 21:07:59.51>>226
たとえばWindowsだとどのタイマAPIがどの物理的ハードウェアに依存するかは、
ACPIだかなんだかのドライバとして何がインストールされたか等、環境依存で変わる。
完全に環境依存な話で、それを吸収するラッパとかコンパイラの提供領分を超えている。
やるとしたらSDKの仕事だが、SDKが提供してるのが精度が環境依存なAPI止まりなわけで…
0256デフォルトの名無しさん
2013/10/08(火) 21:24:41.590257デフォルトの名無しさん
2013/10/08(火) 21:53:02.350258デフォルトの名無しさん
2013/10/09(水) 01:21:00.65まとめるとこんな漢字?
std::unique_ptr<std::thread> th;
if (h0ge)
th.reset(new thread(func));
なんかかっこ悪いような。もっと良いやり方ないのか
0259デフォルトの名無しさん
2013/10/09(水) 01:27:47.77hoge厨はさっさと消えろ
NG回避までして荒らしたいのか
マジで根性腐ってるな
0260デフォルトの名無しさん
2013/10/09(水) 01:44:04.920261デフォルトの名無しさん
2013/10/09(水) 01:49:01.61thread t(hoge ? thread(func) : thread());
とかでよかろ
0262デフォルトの名無しさん
2013/10/09(水) 02:44:20.15お前いい加減迷惑だよ。
0263デフォルトの名無しさん
2013/10/09(水) 15:33:28.68落書きは便所の壁にやってろキチガイ。
0264デフォルトの名無しさん
2013/10/09(水) 17:45:44.21おーい、ラムダが入ってねえぞ
0265デフォルトの名無しさん
2013/10/09(水) 17:46:02.64なんでヴァカが回答者気取ってるの?
お前の書き込みは価値がないんだから早く回線切れよ
0266片山博文MZコスモ ◆T6xkBnTXz7B0
2013/10/09(水) 19:34:04.82https://dl.dropboxusercontent.com/u/72753355/cppreference-en2ja-20130510-0.zip
<p>...</p>と<li>...</li>のみです。
0267デフォルトの名無しさん
2013/10/10(木) 01:38:53.32スレをゴミで荒らさないでください
0268デフォルトの名無しさん
2013/10/10(木) 03:12:49.40CスレにいるキチガイっていったらQZかな
0269デフォルトの名無しさん
2013/10/10(木) 06:22:06.48Yes
0270デフォルトの名無しさん
2013/10/10(木) 13:08:54.730271デフォルトの名無しさん
2013/10/10(木) 14:30:55.64use List::Util qw(min);
$min = min map { $_->value() } @a;
ということをしたい場合。
つまり、配列の中の各要素の特定のメンバーの中での最小値を求めたい場合。
C++だとどういうやり方がナウいんですか?
0272デフォルトの名無しさん
2013/10/10(木) 14:35:16.83for (auto n : list)
min = std::min(min, n);
0273デフォルトの名無しさん
2013/10/10(木) 14:38:28.960274デフォルトの名無しさん
2013/10/10(木) 14:39:12.90listの要素は全て負数なの?
っていうかアルゴリズム系のにラムダ突っ込むとかそういうのは無いのか。
0275272
2013/10/10(木) 14:43:29.23アホだったわすまん
0276デフォルトの名無しさん
2013/10/10(木) 15:04:47.59この手の問題は第一要素を初期値にしなければならない
0277デフォルトの名無しさん
2013/10/10(木) 15:12:22.100278デフォルトの名無しさん
2013/10/10(木) 15:35:55.350279デフォルトの名無しさん
2013/10/10(木) 16:16:46.04mapの部分はどうするんだろ
0280デフォルトの名無しさん
2013/10/10(木) 16:41:05.63それならmin_elementにラムダを渡せばいいんじゃない?
もしそのメンバしか比較対象にならないなら、クラスに < 演算子を定義しておくとか
0281デフォルトの名無しさん
2013/10/10(木) 16:49:39.01いきなりmin_elementに渡したら、元の要素のコピーコンストラクターが動くぞ。
0282デフォルトの名無しさん
2013/10/10(木) 16:52:45.62この型に対してperlでいうところの
min_size = min map { $_->size() } a;
これをやろうとして、
min_elementにa.begin()やa.end()を渡すと
std::vector<char>のコピーコンストラクターが動く?
0283デフォルトの名無しさん
2013/10/10(木) 17:02:44.01何の事?もしかしてラムダの引数のこと?
それなら普通にconst参照にすれば良いよね
0284デフォルトの名無しさん
2013/10/10(木) 17:15:26.61int min = std::min_element(list.begin(), list.end(), [](const A& x,const A& y){ return x.value<y.value; })->value;
0285デフォルトの名無しさん
2013/10/10(木) 18:31:34.290286デフォルトの名無しさん
2013/10/10(木) 23:10:00.570287デフォルトの名無しさん
2013/10/11(金) 18:32:34.840288デフォルトの名無しさん
2013/10/11(金) 20:02:33.13文字列の扱いについて、
char std::string CString TCHAR PLCSTR PLCTSRT 等ありすぎて何が何だか分からなくなるのですが、
皆さんはどのように使い分けてるのですか?
また、通常使うのはどの型を使ってコードを書かれますか?
0289デフォルトの名無しさん
2013/10/11(金) 20:06:55.93LPCTSTRとかは単なるtypedefだからわからないってことはないだろ
0290デフォルトの名無しさん
2013/10/11(金) 20:14:30.82C++はstring
0291デフォルトの名無しさん
2013/10/11(金) 20:15:45.83typedef wchar_t TCHAR;
#else
typedef char TCHAR;
#endif
こういうこと。wchar_tはワイド文字用で2バイト以上ある
stringやCStringはこれらの文字列を楽に使えるようにしたテンプレートクラス
だから普段はこうやってTCHARを使っとくのが無難
typedef std::basic_string<TCHAR> tstring;
tstring str = _T("hoge");
0292デフォルトの名無しさん
2013/10/11(金) 20:17:42.300293デフォルトの名無しさん
2013/10/11(金) 20:18:23.480294デフォルトの名無しさん
2013/10/11(金) 20:22:27.58制御って、なにをしたい?
0295デフォルトの名無しさん
2013/10/11(金) 20:25:25.830296デフォルトの名無しさん
2013/10/11(金) 21:35:15.00構わないで下さい
0297デフォルトの名無しさん
2013/10/11(金) 22:26:41.950298デフォルトの名無しさん
2013/10/11(金) 23:00:33.350299デフォルトの名無しさん
2013/10/11(金) 23:02:17.610300デフォルトの名無しさん
2013/10/11(金) 23:04:03.82signedとか何イミフなこと言ってんの?
0301デフォルトの名無しさん
2013/10/11(金) 23:14:21.97出た
本物の馬鹿が
0303デフォルトの名無しさん
2013/10/11(金) 23:31:12.630304デフォルトの名無しさん
2013/10/11(金) 23:31:21.79ポンタはアドレスですよ、アドレス
0305デフォルトの名無しさん
2013/10/11(金) 23:34:50.97ポインター同士の減算の結果はsignedである。
ゆえにポインターはsignedである。
0306デフォルトの名無しさん
2013/10/11(金) 23:39:06.87そのアドレスを意味する数値の型はsignedかunsignedかという話しだろ
0307デフォルトの名無しさん
2013/10/11(金) 23:40:56.68>ポンタはアドレス
脳内定義乙
0308デフォルトの名無しさん
2013/10/11(金) 23:50:42.050309デフォルトの名無しさん
2013/10/11(金) 23:59:01.51みたいなものか
0311デフォルトの名無しさん
2013/10/12(土) 00:06:01.310312デフォルトの名無しさん
2013/10/12(土) 00:26:13.66ローソンのカードか?
0313デフォルトの名無しさん
2013/10/12(土) 00:47:25.860314デフォルトの名無しさん
2013/10/12(土) 00:54:41.15a[0]をさすポンタ - a[10]をさすポンタ したらマイナスになるからな
0315デフォルトの名無しさん
2013/10/12(土) 01:04:35.48ポンタなんか持ってる奴いるのか?
あんなもの持ってどうするんだ?
0316デフォルトの名無しさん
2013/10/12(土) 01:10:52.40聞かれるよな。あれなんか特典あるのか
ローソンはアニメ関連のこと色々やっているからポンタ貯めてアニメ関連景品ゲット!とか
0318デフォルトの名無しさん
2013/10/12(土) 01:26:53.930319デフォルトの名無しさん
2013/10/12(土) 01:38:04.89そりゃ歩・飛・角が表で、と・龍・馬が裏だろう?
0320デフォルトの名無しさん
2013/10/12(土) 01:47:49.76ローソン系のパスポートアカウントだと思えば。
あれあったら、wifiつかえるんだろ?
ド近所にないからしらんのだが(ちょっといったらある)
0321デフォルトの名無しさん
2013/10/12(土) 02:22:11.120322デフォルトの名無しさん
2013/10/12(土) 02:42:22.34ひいた結果が何かチップセレクトするのかよ?
0323デフォルトの名無しさん
2013/10/12(土) 02:57:58.49ポイントカードはお持ちですか?じゃねーよ
1秒でも早く会計済ませろボンクラ
ローソンのカードは作ったけど財布に入れとくとかさばるから結局家に放置してる
0324デフォルトの名無しさん
2013/10/12(土) 02:59:10.550325デフォルトの名無しさん
2013/10/12(土) 03:15:08.11何でアニヲタに迎合してんの?
0326デフォルトの名無しさん
2013/10/12(土) 03:27:57.71コンビニで金落とすのはヲタだからな
犬のエサみたいなコンビニ弁当とか何の肉か分からないフライドフードとか
ああいう体に悪い原価率の低いものを嬉しそうに買ってくれるのはヲタなんだよ
ビールとかしか買わない客よりよっぽどありがたいお客様なんだよ
0327デフォルトの名無しさん
2013/10/12(土) 04:29:13.460328デフォルトの名無しさん
2013/10/12(土) 04:43:03.29Lチキバーガーうまいですー
0330デフォルトの名無しさん
2013/10/12(土) 08:06:51.950331デフォルトの名無しさん
2013/10/12(土) 12:10:44.69他人を誹謗するだけで
論理的な反論ができないようだな
どっちでもいいので好きなほうを
ポインタ演算で有効なのは差をとることのみだったかと
0333デフォルトの名無しさん
2013/10/12(土) 13:37:29.59どっちが好き?
0334デフォルトの名無しさん
2013/10/12(土) 14:33:38.720335デフォルトの名無しさん
2013/10/12(土) 15:44:54.76ファミチキとLチキの差は正直よく分からない
サンクスのフライドチキンなら違いは分かるけども
0336デフォルトの名無しさん
2013/10/12(土) 16:25:25.400337デフォルトの名無しさん
2013/10/12(土) 16:25:48.980338デフォルトの名無しさん
2013/10/12(土) 17:16:06.940339デフォルトの名無しさん
2013/10/12(土) 19:13:50.630340デフォルトの名無しさん
2013/10/12(土) 19:38:36.28普段は行く気がしない
0341デフォルトの名無しさん
2013/10/12(土) 20:04:51.910342デフォルトの名無しさん
2013/10/12(土) 20:09:59.29ケンタの露骨なマーケティングに騙されず普段からケンタを食べましょう
0343デフォルトの名無しさん
2013/10/12(土) 20:27:33.362本目のCMがどう見てもブラック企業のサービス残業中に見えるんだ。
「サービス残業のお供にケンタッキー」みたいなイメージで推していく感じなのかな。
0344デフォルトの名無しさん
2013/10/12(土) 20:42:09.88俺は油でべた付くのが嫌で紙に巻いて食べてたけど今は箸で食べてる
0345デフォルトの名無しさん
2013/10/12(土) 20:44:23.470346デフォルトの名無しさん
2013/10/12(土) 20:57:45.40興味ある
うp
0347デフォルトの名無しさん
2013/10/12(土) 21:04:36.79想像するだけでうんざりする
絶対食いたくねーよ
ファミチキでいいや
0348デフォルトの名無しさん
2013/10/12(土) 21:08:06.39素手だな
但し必ずテイクアウトにして家で食ってる
0349デフォルトの名無しさん
2013/10/12(土) 22:24:18.76いいぞもっとやれww
軟弱者の少ないはずのスレだからな、こういうネタもいいわな
0350デフォルトの名無しさん
2013/10/13(日) 00:30:54.730351デフォルトの名無しさん
2013/10/13(日) 00:41:18.58って書こうと思ったけど
肉食系の流れになったから書けなくなった
0352デフォルトの名無しさん
2013/10/13(日) 00:59:42.96メインは油断しすぎがあそこだね
普通のFCに「上」を入れると受けるんじゃないかなあ
塩辛い練り物なしで、いい部位だけくれるやつ
0353デフォルトの名無しさん
2013/10/13(日) 01:10:05.77ここはカップル用のクリスマスグッズ専門店ですからお帰りください
と言われそうな雰囲気。
0354デフォルトの名無しさん
2013/10/13(日) 01:19:30.03特別な理由がないと気後れするよ
うちの田舎では
パーティー用総菜店だもの
0355デフォルトの名無しさん
2013/10/13(日) 01:23:47.380356デフォルトの名無しさん
2013/10/13(日) 01:24:25.03断られない?
0357デフォルトの名無しさん
2013/10/13(日) 01:25:49.570358デフォルトの名無しさん
2013/10/13(日) 02:06:42.76リファレンスとしてc++ programming languageも買った方がいいでしょうか?
0359デフォルトの名無しさん
2013/10/13(日) 02:09:01.510360デフォルトの名無しさん
2013/10/13(日) 02:18:50.51他の言語学ぶ時の経験からしっかりと細かいところまで解説してあるような本を買ったほうが
困らないと思っているのとc++11のしっかりとした解説がある本がいいのでその本だと少しイメージが違います
0361デフォルトの名無しさん
2013/10/13(日) 02:22:25.84言いようがない。
そんな本があるならおれも知りたいが、もしかして洋書の話だったのか。
0362デフォルトの名無しさん
2013/10/13(日) 02:24:45.62購入しようとしているとは洋書ですね
もちろん別に洋書にこだわってはいないので和書で良い物がおればそちらでも大丈夫ですが
0363デフォルトの名無しさん
2013/10/13(日) 02:31:38.00むしろ海外の掲示板で質問したほうがいいでしょう。
国内でバラエティに富む洋書を制覇した人は少ないでしょうから。
立ち読みできる種類も最近は限られてるしね。
0364デフォルトの名無しさん
2013/10/13(日) 02:32:51.050365デフォルトの名無しさん
2013/10/13(日) 02:37:17.01では適当な海外掲示板見つけて質問してきます
0366デフォルトの名無しさん
2013/10/13(日) 02:38:20.380367デフォルトの名無しさん
2013/10/13(日) 02:44:01.990368デフォルトの名無しさん
2013/10/13(日) 04:23:32.730369デフォルトの名無しさん
2013/10/13(日) 11:34:54.340370デフォルトの名無しさん
2013/10/13(日) 12:14:17.41ここに晒してもいいでしょうか?
0371デフォルトの名無しさん
2013/10/13(日) 12:24:12.080372370
2013/10/13(日) 12:40:44.35C++の勉強のために作成したので、なるべく言語の機能を使って書くようにした
出来るだけ読みやすいコードになるように努めた
std::stack を真似ようとしたが、一部機能をあきらめた
以上です
0373デフォルトの名無しさん
2013/10/13(日) 12:41:07.690374370
2013/10/13(日) 12:51:07.13実行処理と結果 :StackTest.cpp http://codepad.org/iUfTnJc7
あざす
0375デフォルトの名無しさん
2013/10/13(日) 13:08:53.240376デフォルトの名無しさん
2013/10/13(日) 13:25:07.50virtual ~CStack(); virtualいらなくね
void Push(const TYPE& data);参照にしてよ
const TYPE& Top() const;
TYPE& Top();
2つつくれ
0377370
2013/10/13(日) 13:56:24.63言われるとクラス定義の中に書いたほうが見やすいかも・・・でもやっぱり好みなんですかね
>>376
explicitがいらないのは余分なコンストラクタが無いから(?)でしょうか?
この宣言の使い分けがよくわからないです
0378デフォルトの名無しさん
2013/10/13(日) 14:01:28.66newnode = new CStackNode<TYPE>( data );
if (newnode == NULL)
exit(0);
0379デフォルトの名無しさん
2013/10/13(日) 14:14:26.03どんな教育受けたんだ
0380デフォルトの名無しさん
2013/10/13(日) 14:20:35.28TYPE m_elems;// スタックの要素数
0381370
2013/10/13(日) 14:24:53.98知りませんでした。消しておきます
>>379
社員(?)としての教育は受けてないです
>>380
ああ、本当ですね・・・。気付きませんでした。これはint型でいいんですかね
03821
2013/10/13(日) 14:28:09.940383370
2013/10/13(日) 15:05:36.98ありがとうございました!
Stack.h: http://codepad.org/EWtOBQZS
0384デフォルトの名無しさん
2013/10/13(日) 15:09:02.550385デフォルトの名無しさん
2013/10/13(日) 15:10:22.43C++創成期の教育じゃね
0386デフォルトの名無しさん
2013/10/13(日) 15:12:17.27ハンドラ変更で対処はできるが
今でもnew(std::nothrow)なら許す
0387デフォルトの名無しさん
2013/10/13(日) 15:56:56.31自宅でやってること?
0388デフォルトの名無しさん
2013/10/13(日) 16:02:06.620389デフォルトの名無しさん
2013/10/13(日) 16:04:04.03これはカスだな
勝手にexitしてるのもカス
operator= が追記みたいな動きになってるのもカス
operator=の途中で例外発生したら中途半端な状態で壊れたようになって戻ってくるのもカス。
考え無しで設計してるだろ。コンテナてのはそういうものじゃねーよ。
0390デフォルトの名無しさん
2013/10/13(日) 16:26:51.75hogeの会社では普通だよ
0391デフォルトの名無しさん
2013/10/13(日) 16:39:14.43当時理想とされた実装と注意点がまとめられているから、
まずはそれを読むのがいいべさなあ
0392デフォルトの名無しさん
2013/10/13(日) 17:18:42.82メンバ変数スコープのノーテーションはよく使われると思うんですけどそれは(スタイルの押し付けでは?)
STL 接尾辞アンダースコア
Microsoft C++ (新/旧) 接頭辞m_
Google C++ 接尾辞アンダースコア
Apple Cocoa 接尾辞アンダースコア
Mozzila C++ 接頭辞m(+キャメルケース)
0393デフォルトの名無しさん
2013/10/13(日) 17:21:18.77かぶらない。
そこは評価できる。
0394デフォルトの名無しさん
2013/10/13(日) 17:30:20.31operator = の戻りは*thisにすべき
0395デフォルトの名無しさん
2013/10/13(日) 17:32:15.55個人的には視認しにくくてあまり好きじゃないのだが。
0396デフォルトの名無しさん
2013/10/13(日) 17:36:42.54hoge_
ジェイソン・グレゴリー
m_hoge
0397デフォルトの名無しさん
2013/10/13(日) 17:51:06.84>個人的には視認しにくくてあまり好きじゃないのだが。
お前もそうなのか。俺もだ。m_が実質会社の標準でそれが染み付いているんだろうが
0398デフォルトの名無しさん
2013/10/13(日) 17:54:00.05補完機能(VSのインテリセンスとか)があるIDEなら_を押すとメンバ変数の一覧が出てくる
アンダースコアの次は必ず小文字にしておけばC++の規約ともぶつからない
0399デフォルトの名無しさん
2013/10/13(日) 17:54:53.660400デフォルトの名無しさん
2013/10/13(日) 17:58:26.10先頭アンダースコアは規約で予約扱い
0401デフォルトの名無しさん
2013/10/13(日) 18:01:18.430402デフォルトの名無しさん
2013/10/13(日) 18:03:59.42それはグローバルネームスペースでの話
それ以外では「_大文字〜」が禁止されているが_の次が小文字なら問題ない
0403402
2013/10/13(日) 18:12:20.06× グローバルネームスペース
○ グローバルスコープ
0404デフォルトの名無しさん
2013/10/13(日) 18:13:18.70素晴らしい
0405デフォルトの名無しさん
2013/10/13(日) 18:14:57.24という感じがあって、少なくともpublicメンバには付けたくないな。
0406デフォルトの名無しさん
2013/10/13(日) 18:16:48.46void swap(const CStack<TYPE>&, const CStack<TYPE>&)
を実装すべし
0407デフォルトの名無しさん
2013/10/13(日) 18:29:23.46なぜconst
0408デフォルトの名無しさん
2013/10/13(日) 18:31:59.150409デフォルトの名無しさん
2013/10/13(日) 18:32:49.42コピペで楽しすぎた
0410デフォルトの名無しさん
2013/10/13(日) 18:49:54.63hoge使いだから
0411デフォルトの名無しさん
2013/10/13(日) 19:01:52.600412デフォルトの名無しさん
2013/10/13(日) 22:04:00.22言い訳スマソ
0413デフォルトの名無しさん
2013/10/13(日) 23:05:15.640414デフォルトの名無しさん
2013/10/13(日) 23:06:22.61アフォなアンチhogehogeちゃんに謝る必要は無い
0415デフォルトの名無しさん
2013/10/14(月) 00:24:43.35Effective C++ Item 25
0416デフォルトの名無しさん
2013/10/14(月) 01:24:30.07void CStack<TYPE>::swap(CStack<TYPE>&) throw();
これ以外許さんからな
0417デフォルトの名無しさん
2013/10/14(月) 01:26:33.15コピーアサインメントでリークしてるだロー
0418デフォルトの名無しさん
2013/10/14(月) 01:28:54.01つうか、これ面白くなるし、お前にとっても得がたい貴重な意見を得られるだろうけど、残念ながらその話はいくらでも長くなる。
stackクラス作ってみる専用スレがあってもいいんじゃないか。
0419デフォルトの名無しさん
2013/10/14(月) 06:06:18.70それはメンバ関数の場合だよね?
何のためにCStack<TYPE>を戻すの?
あとグローバル関数もあっていいんだよね?
そっちもCStack<TYPE>を戻せと?
質問ばかりでスマソ
0420デフォルトの名無しさん
2013/10/14(月) 06:22:21.750421383
2013/10/14(月) 06:52:53.36あざす!おはようございます
if (m_topnode == NULL)で何を返せばいいのかわかりませんでした
throw()(例外処理?)をまだ学んでないのでswapはあきらめました
>>417,418
コピーアサインメントでスタックを空にするようにしました
例外知らない奴がスレなんか立てていいのでしょうか
Stack.h: http://codepad.org/1ggMEDl0
0422デフォルトの名無しさん
2013/10/14(月) 07:23:53.54Popの戻りをvoidにするのはそういう理由じゃないぞ。
学んでなくてもthrow()と書くだけだからできるだろ。
あとどうもNULLは気持ち悪い。
0423デフォルトの名無しさん
2013/10/14(月) 08:14:57.74再帰を使って型安全なprintfもどきは書けたんですが、
JavaのString.formatでいう "%2$d %1$s" のような
参照する引数のオフセットを指定する機能をつけるにはどうしたらいいでしょうか。
0424421
2013/10/14(月) 08:16:34.90Stack.h : http://codepad.org/SnU4PfBT
実行結果 : http://codepad.org/fQAZlzmd
0425デフォルトの名無しさん
2013/10/14(月) 08:20:48.540426デフォルトの名無しさん
2013/10/14(月) 08:37:13.85戻すとは?
0427デフォルトの名無しさん
2013/10/14(月) 08:42:38.88コンテナのoperator=は
template <typename TYPE>
Stack<TYPE>& Stack<TYPE> ::operator =(const Stack<TYPE>& rother)
{
Stack<TYPE>(rother).swap(*this);
return *this;
}
このやり方しか許されないので
0428デフォルトの名無しさん
2013/10/14(月) 08:44:53.17boost::formatのソースみりゃいいと思うよ
0429デフォルトの名無しさん
2013/10/14(月) 09:01:18.70単純に自身にコピーするのはだめですか?
>>417氏が指摘されたリークに関係あるのでしょうか
0430デフォルトの名無しさん
2013/10/14(月) 09:05:26.51見間違い。忘れてください。
::が見えないくらい目が悪いので。
0431デフォルトの名無しさん
2013/10/14(月) 09:09:55.31コピーの途中で例外発生して処理中断になったとき、お前のやり方だと中途半端な未完成構造ができるから危ない
0432デフォルトの名無しさん
2013/10/14(月) 09:11:16.56ありがとうございます。
boost::formatってコレでしょうか?
http://www.boost.org/doc/libs/1_54_0/libs/format/example/sample_formats.cpp
variadic templateは使われていないようですが、
variadic templateを使うバージョンもあるのでしょうか?
0433デフォルトの名無しさん
2013/10/14(月) 09:13:31.72ありがとうございます。
可変長引数を受け取ってからtupleに代入して引数の個数を取得するコードは動いたのですが、
コンパイル時に分からないn番目の要素をtupleから取得する方法が分かりませんでした。
0434デフォルトの名無しさん
2013/10/14(月) 09:14:35.70あと今の Stack<TYPE>::Swap の実装だと、
・失敗する可能性がある
・全く効率的でない
という欠陥がある。
>>427,431の指摘に対応するためにはここを直さないとダメ。
0435デフォルトの名無しさん
2013/10/14(月) 09:14:54.51初期化子を使えよ。
initなんか消せ。
copyメソッドなんか消せ。
あれを書いていいのはcopy-constructorだけだから、その中に直接書け。
0436デフォルトの名無しさん
2013/10/14(月) 09:16:00.29Swap ではなく、swap にしろ。
これは些細な問題ではない。
0437デフォルトの名無しさん
2013/10/14(月) 09:17:38.39メンバー関数は全部小文字な。
他のコンテナーと簡単にバトンタッチできるように。
0438デフォルトの名無しさん
2013/10/14(月) 09:22:47.71template <typename TYPE>
void Stack<TYPE>::swap(Stack<TYPE>& rother) throw()
{
std::swap(m_lownode, rother. m_lownode);
std::swap(m_topnode, rother. m_topnode);
std::swap(m_elems, rother.m_elems);
}
0439デフォルトの名無しさん
2013/10/14(月) 09:29:25.94再帰で std::vector<boost::any> に詰め込めば、後からランダムアクセスできる。
ただし boost::any の type() で typeinfo を調べてから 型ごとに boost::any_cast<T> するあたりから泥臭くなる。
まあCの可変長引数と違って、実行時に型チェックができるだけマシっちゃマシかな
0440デフォルトの名無しさん
2013/10/14(月) 09:57:10.43ありがとうございます。
これなら目的は達成できそうです。
0441424
2013/10/14(月) 10:25:46.22ありがとうございます!
Stack.h: http://codepad.org/A8uhjc75
実行結果: http://codepad.org/GpHZht3l
0442デフォルトの名無しさん
2013/10/14(月) 10:42:37.24型を消去せず、保持したまま掘り進めていくことも可能
http://ideone.com/3EcKXa
このソースの上の方にある構造体は、index_tupleイディオムを実装するためのもので、タプルを展開して扱う事が出来るようになるのでとても便利
0443デフォルトの名無しさん
2013/10/14(月) 11:52:26.13グローバルな swap関数を用意するのも忘れるなよ。
std::swap をオーバーライドするものとなる。
これがないとせっかく作ったメンバ関数としてのswapの価値が半減する。
0444デフォルトの名無しさん
2013/10/14(月) 17:38:31.15ありがとうございます。
でもコレはどう考えても効率良くないですし、
タプルの一部を参照した後の処理(この例だとcoutへの出力)が探索部分の内側に隠れてしまっていて使いづらいですね。
0445デフォルトの名無しさん
2013/10/14(月) 18:39:00.670446デフォルトの名無しさん
2013/10/14(月) 19:05:37.10効率は出しやすいことくらいわかってるわけで、つまり、何を今さら
0447デフォルトの名無しさん
2013/10/14(月) 19:27:02.32boost::any使うと動的確保が必要になるしRTTIもコストかかるよ、多分関数呼び出しのコストより高いと思う
処理はファンクタを渡せるようにすれば汎用的になるぞ
http://ideone.com/nOv2E1
0448デフォルトの名無しさん
2013/10/14(月) 20:26:44.27なんだ思う厨か
相変わらずベンチデータもなして糞みたいな妄想を垂れ流してるんだな
0449デフォルトの名無しさん
2013/10/14(月) 20:35:00.58これでオッケー。
0450デフォルトの名無しさん
2013/10/14(月) 20:37:05.320451デフォルトの名無しさん
2013/10/14(月) 20:37:31.540452デフォルトの名無しさん
2013/10/14(月) 20:42:11.450453デフォルトの名無しさん
2013/10/14(月) 20:48:05.95の下の方に、 typeid による型の比較と dynamic_castにほる型の比較 のベンチマークがある。
環境にもよるが typeidの比較が特に高コストだとは言えないようだ。
>>447 のコードはindex_tuple の生成自体は別に遅くないと思うが、
アクセスの度に tuple を parameter pack に変換して端から再帰スキャンするので
引数が多い場合やパラメータに複雑な型が使われている場合は影響があるかもしれない。
末尾再帰最適化が十分に優れている環境はそれほど多くはないだろう。
まあ使うのは >>444 だと思うのでベンチするなり好みで選ぶなり好きにしろや
0454デフォルトの名無しさん
2013/10/16(水) 05:21:10.02あるapiでリエントラントな関数の呼び出しを要求される関数があるのですが
FuncA(FuncB)
FuncBはリエントラントでなければならない
リエントラントというのはグローバルにアクセスしたらリエントラントでなくなる、という説明があったのですが
グローバル変数を書き換えないアクセスでもアウトですか?
0455デフォルトの名無しさん
2013/10/16(水) 05:42:44.79int nCalled = 0;
void FuncB(){
if( ++nCalled == 1 ){
do{
// do the job that may raise reentrant
}while(--nCalled);
}
}
シングルスレッドの処理系ならこんな風にも書けるな。
nCalled にアクセスしている部分は処理系によってはクリティカルセクションで囲むことになるだろう
0456デフォルトの名無しさん
2013/10/16(水) 06:00:39.66アウト
0457デフォルトの名無しさん
2013/10/16(水) 06:32:03.54理由は?
0458デフォルトの名無しさん
2013/10/16(水) 07:39:07.770459デフォルトの名無しさん
2013/10/16(水) 09:10:51.51書き換えなきゃ即値と同じ
0460デフォルトの名無しさん
2013/10/16(水) 09:12:30.33これでdo while間がエントラントになるということですか?試してみます
>>459
ですよね、なんかテキトーな説明が多いような
0461デフォルトの名無しさん
2013/10/16(水) 09:16:54.60外部から書き換えると、物によっては不安定
0462デフォルトの名無しさん
2013/10/16(水) 09:17:36.73理屈上はな。
0463デフォルトの名無しさん
2013/10/17(木) 13:53:38.96では即値として使って問題になる例を。
0464デフォルトの名無しさん
2013/10/17(木) 14:22:28.81馬鹿を相手するのは無駄
0465デフォルトの名無しさん
2013/10/17(木) 17:54:13.04絶対にタイプミスしない「理屈上」の世界の話は、他所でやってくれ。
0466デフォルトの名無しさん
2013/10/17(木) 17:59:20.64意味が分からない
0467デフォルトの名無しさん
2013/10/17(木) 19:57:25.85mfcというものがあると知って使ってみたのですが、
win32とは全然違っていて少し戸惑っています
何かおすすめの書籍か、解説サイトがあれば教えていただけませんか?
また、sqlserverを利用したいと思っているのですが、
oledbが廃止になるなんて記事を見まして、何を使おうか迷っています
.netは使わない方向で行きたいのですが、
adoもサイトを見た感じですが、おすすめっぽくないのですが、
ado, dao, oledb. odbc等皆さんはどれを使っていますか?
0468デフォルトの名無しさん
2013/10/17(木) 21:36:27.59何を使ってることが多いか気をつけて見ているといい
MFCもあるが、ATLもWTLもあるよ。と言っておく
一頃はdao*.dll がよく載ってたね
MDAC必須とかいうアプリも結構あった
今は、sqliteが載ってるやつが多いんじゃないか
0469デフォルトの名無しさん
2013/10/17(木) 21:45:27.09MFCによるWindowsプログラミング
0470デフォルトの名無しさん
2013/10/18(金) 23:00:51.17visual studioを使ってプログラムを書いています
ファイルパスとしてUTF 8で文字列が渡されますが、fopen_s(&fp, filepath, "w")で失敗します
恐らく文字コードをOSのエンコーディングにしなければならないものと思われますが
出来上がったものは海外でも使われる可能性があり、utf 8でfopenを行いたいのですが
内部文字コードはどうすれば変更できるのでしょうか?
0471デフォルトの名無しさん
2013/10/18(金) 23:10:24.560472デフォルトの名無しさん
2013/10/18(金) 23:19:36.380473デフォルトの名無しさん
2013/10/18(金) 23:26:54.16世界で使われるものはUTF-16にするというのがWindowsの考え。
WindowsではUTF-8のMBCSを完全にはサポートしてない。
0474デフォルトの名無しさん
2013/10/18(金) 23:30:26.040475デフォルトの名無しさん
2013/10/18(金) 23:35:08.390476デフォルトの名無しさん
2013/10/18(金) 23:50:43.03char *str
char* str
どっちが正しいの?
どっちが多いの?
で、どっちが好き?
0477デフォルトの名無しさん
2013/10/18(金) 23:51:49.840478デフォルトの名無しさん
2013/10/18(金) 23:56:55.58案件により下を指定されることはあっても
本音はまったくブレない
0479476
2013/10/19(土) 00:06:35.03それを含めて、自分は下なんだけど、
脳内で、
○メモリの大きさの定義 + どんな変数か
○どんな宣言か + 単なる変数のラベル
のどちらとして意識するか、なんだろうけど
もっと言えば
char *str[]
char* str[]
だと、上の方が原則に一致してるような気もする
0480デフォルトの名無しさん
2013/10/19(土) 00:10:30.52>char *str[]
>char* str[]
整形ツールは上になるな。
char *str[], c2, *c2;など見るとわかるが、*は変数に付く。
0481デフォルトの名無しさん
2013/10/19(土) 00:11:21.21C++では下が多数派な気がする
0482476
2013/10/19(土) 00:13:45.43java だと、char[] str
とかいけるでしょ。
配列は、変数に付くはずだけど、cだと変数名の後ろになる
char **
はどう説明するの?
0483476
2013/10/19(土) 00:16:19.76ほんの少しだけ話が反れるけど、
void func( int a, b, c );
ってできないよねぇ。その影響なのかも、とか思っちゃったり。
まあ、>>480の話が正しいような気もするけど。
0484デフォルトの名無しさん
2013/10/19(土) 00:18:41.66だな。
0485デフォルトの名無しさん
2013/10/19(土) 00:22:01.25char *str派の人はテンプレートとかプロトタイプ宣言も離すんだろうか
void foo<char *>()とかvoid bar(char *)とか
0486デフォルトの名無しさん
2013/10/19(土) 00:23:09.81C++使うようになってから俺は下になった
0487デフォルトの名無しさん
2013/10/19(土) 00:25:02.08乗算じゃないんだから離すのはないな
0488476
2013/10/19(土) 00:28:35.35確かにそうだよね。
ポインタのポインタは、char** なんだから。
だけど、そうすると、>>480 の話と矛盾が出てくる
だから関数の引数ではまとめて宣言できない、
( = つまりまとめて宣言する方がどちらかと言うと例外 )
七日も知れんけど
0489デフォルトの名無しさん
2013/10/19(土) 00:37:04.50複数変数を宣言するときの挙動を考えるとchar *str1, *str2なんだよね
俺は単体の時は型につけるけど、正直どっちでもいい
0490デフォルトの名無しさん
2013/10/19(土) 00:39:07.97宣言としては変数に付くからchar *a、結果得られるaの型はchar*、って思ってる。
コレが気持悪いと思うなら、LPSTRでも使うかって事になると思う。
0491476
2013/10/19(土) 00:43:57.28変数に付くんだろうか?
*a は、メモリが格納される領域を宣言することになるんだよね?
int *a
と
long *a
では、同じメモリの大きさを確保するのであって
所詮「a」 はメモリのアドレスにつけられた名前でしかないんじゃないの?
*a という変数を用意しているわけじゃないし
0492デフォルトの名無しさん
2013/10/19(土) 00:49:10.670493デフォルトの名無しさん
2013/10/19(土) 01:07:54.66「*」の修飾の対象が型ではなく変数名って事な。
最終的には全部結合するんだが、演算子の優先順位で型より先に変数名と先に結合してしまうというか。
0494デフォルトの名無しさん
2013/10/19(土) 01:12:21.820495デフォルトの名無しさん
2013/10/19(土) 01:18:40.73char* str;
char_ptr str;
typedef char *char_ptr;
char *str;
char_ptr str;
どっち?
0496デフォルトの名無しさん
2013/10/19(土) 01:30:17.96readbuf(char_ptr p, size_t n);
これなら、引数名・変数名を省略するときは、スペースと引数名を消すという統一された処理ができる。
readbuf(char*, size_t);
readbuf(char_ptr, size_t);
スペースは引数名・変数名にも型名にも含まれず、両者の間にある区切りという位置付けだからそうなる。
この状態に引数名・変数名を足したくなったら、いずれであってもスペースと名前を足せばよい。
ところが
readbuf(char *p, size_t n);
readbuf(char_ptr p, size_t n);
これだと、統一されたルールで変更しようとすると
スペースは消せない。
readbuf(char *, size_t );
readbuf(char_ptr , size_t );
こうなる。
要は、引数名・変数名の直前の文字は、それがスペースであっても'*'であっても
全て型名の中に含むということ。
スペースは型名と引数名・変数名の間にある区切りではないのでこうなる。
0497デフォルトの名無しさん
2013/10/19(土) 01:30:59.49配列だとchar str[]がchar[]型になるから、ポインタも同じで、って考えじゃないかね
どっちにしろ直観的じゃないから、Cより後の言語ではこんな宣言しないんだろう
配列は無理だけど、ポインタはchar* strって書くことができるんだから、そうした方がベターじゃないかと思うんだが
>>492
書き方統一したいのが人情ってもんじゃないかね
0498デフォルトの名無しさん
2013/10/19(土) 01:39:27.010500476
2013/10/19(土) 01:53:51.09ロジカルですな。
う〜ん
>>497
自分もそう思ってるんだけど
ただ、
char[] で宣言できてもよさそうなもんだけど
0501デフォルトの名無しさん
2013/10/19(土) 02:01:00.69int*a;
int*b;
を、
int*a,b;
と書けるようにしたかったのなら、
int* a;
を必須とする選択も有っただろう。
しかし実際には、
int ary[10];
int x=2;
int x=3;
int*abc = ary + x * y;
のようなパースが難しくなるので、非現実的。
0502デフォルトの名無しさん
2013/10/19(土) 02:02:24.870503デフォルトの名無しさん
2013/10/19(土) 02:48:37.13ひとときchar* strをこじらせて
痛い目をみてchar *strにもどる
char *strスタイルには避け得ぬバグへの抑止効果があるので絶対に譲れない
0504デフォルトの名無しさん
2013/10/19(土) 02:49:18.30そんな効果ない
0505デフォルトの名無しさん
2013/10/19(土) 03:27:10.23ありがとうございます
渡される文字をUTF-16に変換する
_wfopen_sを使う
以上2点で解決致しました
0506デフォルトの名無しさん
2013/10/19(土) 04:42:55.80*はdeclaratorの一部であって
declarationに複数のdeclaratorを書ける文法なんだから
int *unko, *kuso;
と書くのがすじ
0507デフォルトの名無しさん
2013/10/19(土) 04:54:16.000508デフォルトの名無しさん
2013/10/19(土) 04:57:24.86と聞いてやってきました
0509デフォルトの名無しさん
2013/10/19(土) 07:25:35.990510デフォルトの名無しさん
2013/10/19(土) 08:14:31.66int* a;
だよ。一貫性が大事
0511デフォルトの名無しさん
2013/10/19(土) 08:46:04.170512デフォルトの名無しさん
2013/10/19(土) 08:57:54.960513デフォルトの名無しさん
2013/10/19(土) 09:01:24.190514デフォルトの名無しさん
2013/10/19(土) 09:12:53.84一貫性が大事。
…だが、議論してまで通すほどの内容ではないと思う。
ぶっちゃけ趣味の問題。
0515デフォルトの名無しさん
2013/10/19(土) 09:16:09.980516デフォルトの名無しさん
2013/10/19(土) 09:25:05.90各変数の型を答えよ
0517デフォルトの名無しさん
2013/10/19(土) 09:33:12.87俺がいる C以来、ポインタを定義するといったら、type* だろw と思ってる
もちろん既出の通り、異論は認める、ソースファイル単位で、郷に従ってるw
0518デフォルトの名無しさん
2013/10/19(土) 09:36:47.22まとめると
宗 教
ってことやね。これが後の前経と後教の宗教戦争を端にした前後南北朝時代である、と。
○どっちが正しい?
宗教なので・・・
○どっちが多い?
C時代は後教が圧倒的優勢
C++時代に入り前経が勢力を伸ばす
○どっちが好き?
C++時代以降を南北朝時代と呼び宗教戦争が激化
ハイブリッド源氏も勢力を伸ばす
邪波教なる宗教も新興し混乱が増す
地域によっては、踏み絵、改宗なども随所で行われている
-----以下宗教戦争の続きをどーぞ↓↓↓↓
0519デフォルトの名無しさん
2013/10/19(土) 09:42:47.27そう、int * a; 教の隆盛である
0520デフォルトの名無しさん
2013/10/19(土) 09:44:02.85これダサい
0521デフォルトの名無しさん
2013/10/19(土) 09:47:43.01【IT】「C++ よりあらゆる面で優れる」 Facebookが「D言語」の利用を開始、他の大企業も追随か?[10/19]
http://uni.2ch.net/test/read.cgi/newsplus/1382142182/
0522デフォルトの名無しさん
2013/10/19(土) 10:00:21.61死ね
0523デフォルトの名無しさん
2013/10/19(土) 10:04:47.310524デフォルトの名無しさん
2013/10/19(土) 10:10:28.80Facebook よ、お気の毒に
0525デフォルトの名無しさん
2013/10/19(土) 11:53:46.61Dはカス
0526デフォルトの名無しさん
2013/10/19(土) 12:08:05.57変数には int *you;
0527デフォルトの名無しさん
2013/10/19(土) 12:11:58.04ダサッ
0528デフォルトの名無しさん
2013/10/19(土) 12:12:46.40言語明瞭意味不明
0529デフォルトの名無しさん
2013/10/19(土) 12:17:41.630530デフォルトの名無しさん
2013/10/19(土) 12:20:00.25ん〜?
0531デフォルトの名無しさん
2013/10/19(土) 12:30:20.18int *a; => a +b /c
0532デフォルトの名無しさん
2013/10/19(土) 12:34:11.16せめてJava使えよ・・・よりによってDはないだろDは
0533デフォルトの名無しさん
2013/10/19(土) 12:44:36.02int ( * a )
だから何の問題も無いと思うけど???
0534デフォルトの名無しさん
2013/10/19(土) 12:56:49.23これだな
一番楽だしこう書いて問題が起きることはまずない
0535デフォルトの名無しさん
2013/10/19(土) 12:58:53.580536デフォルトの名無しさん
2013/10/19(土) 14:08:01.83それを言うなら std::vector<std::vector<int *> > っしょ
0537デフォルトの名無しさん
2013/10/19(土) 15:58:24.98一貫性無さ過ぎてウゼー
0538デフォルトの名無しさん
2013/10/19(土) 16:33:53.96参照は int & r;
だなぁ、なんでこうなったのかわからん。
0539デフォルトの名無しさん
2013/10/19(土) 16:36:20.030540デフォルトの名無しさん
2013/10/19(土) 16:45:49.64typedef int *int_pointer;
って書くの?
0541デフォルトの名無しさん
2013/10/19(土) 17:07:09.84いやメンバ宣言なら通るだる?
0542デフォルトの名無しさん
2013/10/19(土) 17:08:08.160543デフォルトの名無しさん
2013/10/19(土) 17:08:37.340544デフォルトの名無しさん
2013/10/19(土) 17:09:30.320545デフォルトの名無しさん
2013/10/19(土) 17:11:56.560546デフォルトの名無しさん
2013/10/19(土) 17:15:26.94どれ?
0547デフォルトの名無しさん
2013/10/19(土) 17:19:14.20>>542
0548デフォルトの名無しさん
2013/10/19(土) 17:24:54.75http://toro.2ch.net/test/read.cgi/tech/1313183984/403
http://ideone.com/ArKwc
0549デフォルトの名無しさん
2013/10/19(土) 17:39:20.89どうみても通るとしか
0550デフォルトの名無しさん
2013/10/19(土) 18:13:19.92それは誰だって
typedef int* int_pointer;
にするだろ、評価の優先順位からいって。
見た目の一致だけみて一貫性とかいってる奴はあほ
0551デフォルトの名無しさん
2013/10/19(土) 18:15:54.41評価の優先順位という意味不明な供述をしており
0552デフォルトの名無しさん
2013/10/19(土) 18:18:35.62int_ptr a1;
int* a2;
これなら一貫性あっていいな
0553デフォルトの名無しさん
2013/10/19(土) 18:19:46.98理解していないことは理解したOK
0554デフォルトの名無しさん
2013/10/19(土) 18:22:41.540555デフォルトの名無しさん
2013/10/19(土) 18:27:07.82一貫性あるね
0556デフォルトの名無しさん
2013/10/19(土) 18:37:30.95hageがその意味でバカだった。
const int hage, *const unko = nullptr, *const *const kuso = nullptr;
という宣言に於いて
「const int」がtype-specifier-seq、
「*const unko = nullptr」と
「*const *const kuso = nullptr」が
init-declaratorであり、
後者のconstはすぐ左の*に対するオマケ
という文法なのだから、
type-specifier-seqの一部とinit-declaratorの一部を
くっつけようなどという発想は愚か。
0557デフォルトの名無しさん
2013/10/19(土) 18:47:31.05OK?
0558デフォルトの名無しさん
2013/10/19(土) 19:05:47.13> type-specifier-seqの一部とinit-declaratorの一部を
> くっつけようなどという発想は愚か。
この部分が飛躍してる
0559デフォルトの名無しさん
2013/10/19(土) 19:11:57.63終わるわけねーよ
0560デフォルトの名無しさん
2013/10/19(土) 19:13:22.40これもなんか妙だし
0561デフォルトの名無しさん
2013/10/19(土) 19:21:12.18どのあたりが飛躍なのか説明無しに
相手を誹謗するだけのチンカス乙
0562デフォルトの名無しさん
2013/10/19(土) 19:23:43.77主犯は禿
0563デフォルトの名無しさん
2013/10/19(土) 19:23:54.39「type-specifier-seqの一部とinit-declaratorの一部を
くっつけようなどという発想」
が「愚か」だと判断される理由は?
。>
> この部分が飛躍してる
0564デフォルトの名無しさん
2013/10/19(土) 19:24:38.08などと意味不明な供述(r
0565デフォルトの名無しさん
2013/10/19(土) 19:26:23.71右寄せしたら駄目だよ!
0566デフォルトの名無しさん
2013/10/19(土) 19:30:30.090567デフォルトの名無しさん
2013/10/19(土) 19:49:45.90Class ...Args
お前らはどっち?
でClassのあとの...ってどう呼ぶんだ
args...
この...は演算子なんだろ?
0568デフォルトの名無しさん
2013/10/19(土) 19:51:26.45おまえ演算子の意味わかってないだろ
0569デフォルトの名無しさん
2013/10/19(土) 21:38:47.63うなだれるリーゼント野郎
0572デフォルトの名無しさん
2013/10/20(日) 00:44:47.06和書の方が嬉しいですが、洋書でも大丈夫です
0573デフォルトの名無しさん
2013/10/20(日) 00:52:06.870574デフォルトの名無しさん
2013/10/20(日) 01:01:49.66少なくとも「論」争レベルには達してない。
仕様確認して、あとはツールに任せればいい事を思い込みで言ってるだけ。
0575デフォルトの名無しさん
2013/10/20(日) 02:00:58.99そのアホなルールを通すための文法が>>556なわけで
なんでint a, *b; みたいに 型であるポインタが変数側に来るんだポインタは型じゃないのかよボケってとこから
出発したint* b;って書いて型を明確にしようって意味論的発想を理解できない化石脳な
カス野郎が未だに存在していることが理解不能だよ
0576デフォルトの名無しさん
2013/10/20(日) 02:07:44.01int a, *b, *const *c;
みたいに書くのか?
0577デフォルトの名無しさん
2013/10/20(日) 02:17:13.16変数は複数宣言のために仕方ないってのも分かるが
0578デフォルトの名無しさん
2013/10/20(日) 02:24:52.88char *func1(), func2(), **func3();
関数でもこうやって宣言してる?
0579デフォルトの名無しさん
2013/10/20(日) 02:35:12.81それにどう対応するかで意見が分かれる。
俺は意味論的な読みやすさを重視した方がいいな。他の言語と行き来する時に混乱しにくいし。
0580デフォルトの名無しさん
2013/10/20(日) 02:37:47.88もし型ならば、できるだけ左側につけて書く。
もし単項演算子なら、できるだけ右側につけて書く。
「*」を含む変数宣言・定義は一行に複数をまとめない。
まとめたいときはtypedefして「*」をなくす。
最近のライブラリはみんなこうだから、合わせておけば将来安心
0581デフォルトの名無しさん
2013/10/20(日) 03:12:25.940582デフォルトの名無しさん
2013/10/20(日) 03:49:33.61古い言語だからしょうがない
0583デフォルトの名無しさん
2013/10/20(日) 04:12:17.530584デフォルトの名無しさん
2013/10/20(日) 05:20:49.68コードページ間で変換を行うAPIはC標準じゃなくてWindows API側にある。
ここより適したスレで質問するべき
0585デフォルトの名無しさん
2013/10/20(日) 05:25:47.85fopen_sにUTF8でファイル名指定したいという人に
文字コード変換は他で訊けとはこれ如何に。
しかしfopen_sとかキモイ関数はC++14にも
入るんだよなきっと
0586デフォルトの名無しさん
2013/10/20(日) 05:47:13.71現在のロケール→ワイド文字の変換は
mbstowcs,mbsrtowcs
mbstowcs,wcsrtombs
mbrtowc,wcrtomb
snprintf(out,len,"%ls",in),swprintf(out,len,"%s",in)
で出来る筈で、この辺はC99で有効なはず。
変換したい文字コードのロケールがあれば、
setlocaleとこれらで全て相互変換出来る筈だが
・・・実際実用に出来るかというと・・・なぁ・・・
0587デフォルトの名無しさん
2013/10/20(日) 05:55:24.20一つ前のレスも読めない文盲はしんでいいよ
0588デフォルトの名無しさん
2013/10/20(日) 06:01:26.54昔とは事情が違うけど、今でも縦が不足気味なのに対して横が余ってね?てか、横ダダ余りすぎというかw
横長すぎだろ?と思って普段は↓みたいに分けてるけど・・・・・・
auto filter = [are, kore, sore](int dore, int dare, int ore){ return long_long_expression; };
auto begin = boost::make_filter_modoki(filter, id_0, id_1);
どうせ横ダダ余りなんだから、いっそ開き直って↓って書いてもいいんじゃなかろうか?と悩んでしまう。
auto begin = boost::make_filter_modoki([are, kore, sore](int dore, int dare, int ore){ return long_long_expression; }, id_0, id_1);
0589デフォルトの名無しさん
2013/10/20(日) 06:21:02.76577みたいなバカが設計すると
cout << kuso
みたいなウンコ禿ライブラリができあがる
0590デフォルトの名無しさん
2013/10/20(日) 06:24:21.25585-586は欠片も重複して無いんだが、読んでたらどーなるんだ?
0591デフォルトの名無しさん
2013/10/20(日) 06:39:20.00�A現在のロケールで表現できない文字コード間の変換ができるようになります
�BC++スレでC99という関係無い言語を持ち出すことが減るでしょう
�CUTF-8というWindowsのsetlocaleでは制限を受ける文字コードが扱いやすくなります
�D彼女ができます
�Eswprintfの使い方を間違えなくなります
�F宝くじで1億円あたるかも?
0592デフォルトの名無しさん
2013/10/20(日) 06:41:50.77リーダブルなコードを書くためには見た目が大切だよ
C言語は規格が腐っていることは既に散々言われてることだけど
今更変えることが出来ないから新規コードは書き方で工夫していこうってこと
規格でgotoを自由に使えるからといってスパゲッティなコードは
書くのは良くないという共通認識と同じレベルだよね
coutは演算子を自由にオーバーロードできるという規格をフル活用して作った
プロモーション的なものだからその反論はブーメランなんじゃないかな
これもgotoと同じでデフォルトの演算子の意味とかけ離れた再定義なんて
してはいけないことという共通認識が現在は出来てるよね
0593デフォルトの名無しさん
2013/10/20(日) 07:06:49.77そんなこと言うからDSLちゃん拗ねちゃったじゃない!慰めてあげて><
0594デフォルトの名無しさん
2013/10/20(日) 07:08:30.43一貫性のない書き方は可読性を下げると主張する人に対して
「俺の書き方の方が可読性が上」の前提でレスするとか、
どうしたらこういうおつむになるんだろ
0595デフォルトの名無しさん
2013/10/20(日) 08:14:12.15> 一貫性のない書き方は可読性を下げると主張する人に対して
それはどれだよ
0596デフォルトの名無しさん
2013/10/20(日) 08:37:27.88「見た目が大切」というレスポンス(>>592)。
ここまでは俺にもわかる。
>>594は一体何を言っているんだ…
一行でまとめた方がいいときにはね。
一行でまとめてすっきりさせたり、一個ずつコメントを付けておいたり、妙な縛りにとらわれずに変幻自在にやってるよ
0598デフォルトの名無しさん
2013/10/20(日) 10:08:07.700599デフォルトの名無しさん
2013/10/20(日) 10:12:27.79チームで開発したことない奴はコーディングルールに縛られなくて良いよな!
あ、チームって言うのは未来の自分(=他人)も含んでの意味だからー
オナニー開発は自分のコードをメンテしなくていいのも利点だのぉ
0600デフォルトの名無しさん
2013/10/20(日) 10:18:34.60お前は百人に一人すらいない少数派だと思うよ
コーディングルールによっては、「変数定義/宣言は一行にひとつで」とかあるんですか?アマチュアからみてもちょっと信じられない縛りですね
代表的なコーディングルールにはなにがあるのでしょうか?
0602デフォルトの名無しさん
2013/10/20(日) 10:21:07.23変数定義じゃなくて、関数定義の話だろう
0603デフォルトの名無しさん
2013/10/20(日) 10:21:36.080604デフォルトの名無しさん
2013/10/20(日) 10:22:07.33関数定義じゃなくて、関数宣言の話
0605デフォルトの名無しさん
2013/10/20(日) 10:30:26.33> 宣言や定義をカンマで並べる人は
> char *func1(), func2(), **func3();
> 関数でもこうやって宣言してる?
>>597 ◆QZaw55cn4c
> 一行でまとめた方がいいときにはね。
略
>>599
> チームで開発したことない奴はコーディングルールに縛られなくて良いよな!
略
>>601 ◆QZaw55cn4c
> コーディングルールによっては、「変数定義/宣言は一行にひとつで」とかあるんですか?アマチュアからみてもちょっと信じられない縛りですね
略
お前、なに途中で話を変えてんだよ
デタラメ過ぎだろ
0606デフォルトの名無しさん
2013/10/20(日) 10:36:41.13特に強制されたわけじゃないが、いつのまにか一行一宣言になったな、俺は。
複数の宣言を併記してもタイプ量以外メリットないし。
0607デフォルトの名無しさん
2013/10/20(日) 11:03:20.80規格をもとに論破されて
可読性に話をすり替えているようですね
[[unko]] int const a alignas(100), *[[kuso]]const pb alignas(100) [1][[hage]], *[[kuso]]const pc alignas(100) [1][[hage]];
はどうするんだっけ? 一行に書かないようするん?
0608デフォルトの名無しさん
2013/10/20(日) 11:06:01.31バカは死ねよ
0609デフォルトの名無しさん
2013/10/20(日) 11:32:16.26test<int(*const)[8]>
どっちが正しい?
0610デフォルトの名無しさん
2013/10/20(日) 11:38:40.00そうでもないと思うけどね。
俺もいつの間にか一行一変数が習慣になっているなあ。
定義時初期化を心がけてるからだと思うんだけど、一行一変数の方が楽なんだよね。
0611デフォルトの名無しさん
2013/10/20(日) 11:45:59.46全く統一されていないUNKOです
0612デフォルトの名無しさん
2013/10/20(日) 12:02:41.501行1mean が必須かな。
だから、1行1変数が良いと思うよ。
まあ芸術的感覚がない人には理解できんよ
0613デフォルトの名無しさん
2013/10/20(日) 12:07:49.10未来の自分ってなんだよw
その未来に自分が生存しているなんて保障はないだろ
0614デフォルトの名無しさん
2013/10/20(日) 12:08:44.790615デフォルトの名無しさん
2013/10/20(日) 12:12:16.321時間後に自分でコードを修正した。
1日後にも修正予定。
⇒ 3人によるチーム開発と599は自認
もう599が哀れで仕方ない
0616デフォルトの名無しさん
2013/10/20(日) 12:25:29.51哀れすぎる 今すぐ死んだ方が良い
0617デフォルトの名無しさん
2013/10/20(日) 12:32:47.85未来の自分へ
やぁ、久しぶり。君が無事にこのコメントを読んでいるということは、デバッグはうまくいったんだね。
その間いろいろ苦労をかけたと思うけど、仕方がなかったんだ。許して欲しい。
君も知っている通り、このコードは恐ろしいバグに侵されていて現代の技術では直す術がなかった。
だから、未来の新しい技術でこの問題が解決できるときまで僕は眠ることにする。
おやすみ。
*/
0618デフォルトの名無しさん
2013/10/20(日) 12:37:44.750619デフォルトの名無しさん
2013/10/20(日) 12:38:23.65天気が悪いのでまったり
******/
0620デフォルトの名無しさん
2013/10/20(日) 12:46:59.19なんか昼間から酒のみたくなってきた
/*/
0621デフォルトの名無しさん
2013/10/20(日) 12:47:45.48パンダの霊にでもとりつかれてんじゃねーか、兄ちゃん
0622デフォルトの名無しさん
2013/10/20(日) 12:49:46.77// 寝る
// parseInt の修正
// trim関数は必要?
// 飯
// 2ch (削除予定)
//
0623デフォルトの名無しさん
2013/10/20(日) 12:59:24.140624デフォルトの名無しさん
2013/10/20(日) 13:00:20.33// ここをコメントアウトするとなぜかうごく
...
#endif
0626デフォルトの名無しさん
2013/10/20(日) 13:21:22.150627デフォルトの名無しさん
2013/10/20(日) 13:33:28.54つまり、一行でまとめる人は脳味噌が腐ってると?
0628デフォルトの名無しさん
2013/10/20(日) 14:36:05.23#include <iostream>
typedef int (*FPtr)(int);
int add(FPtr f, int x, int y) {
return (*f)(x)+(*f)(y);
}
int func(int x) {
return x+1;
}
struct func2 {
const int a;
func2(int a): a(a) {}
int operator()(int x) const { return a*x; }
};
int main()
{
std::cout << add(func,2,3) << std::endl;
func2 f2(4);
//std::cout << add(f2,2,3) << std::endl;
}
0629デフォルトの名無しさん
2013/10/20(日) 15:12:00.46無い
0630デフォルトの名無しさん
2013/10/20(日) 15:12:11.590631デフォルトの名無しさん
2013/10/20(日) 15:12:48.890632デフォルトの名無しさん
2013/10/20(日) 15:15:10.740633デャtォルトの名無bオさん
2013/10/20(日) 15:18:49.53無理
仕組みを考えればできないことは明らか
0634デフォルトの名無しさん
2013/10/20(日) 15:19:25.330635デフォルトの名無しさん
2013/10/20(日) 15:19:27.35FunctionObject gFunc;
Result delegate(Arg val){
return gFunc(val);
}
int main(){
c_function(delegate);
}
0636デフォルトの名無しさん
2013/10/20(日) 15:26:21.93何でも入るし
0637デフォルトの名無しさん
2013/10/20(日) 15:34:42.250638デフォルトの名無しさん
2013/10/20(日) 15:37:42.89ラムダなら余裕だろ
0639デフォルトの名無しさん
2013/10/20(日) 15:39:45.17これ何かおかしいですか?セグフォになるんですけど・・・
#include <iostream>
#include <functional>
typedef int (*FPtr)(int);
int add(FPtr f, int x, int y) {
return (*f)(x)+(*f)(y);
}
int func3(int a, int x) {
return a*x;
}
int main()
{
std::function<int(int)> f3 = std::bind(func3,std::placeholders::_1,4);
std::cout << add(*f3.target<FPtr>(),2,3) << std::endl;
}
0640デフォルトの名無しさん
2013/10/20(日) 15:47:21.69アホかそんなことやったら落ちるに決まってんだろ
ttp://ideone.com/FEmUgG
0641デフォルトの名無しさん
2013/10/20(日) 15:51:50.09いや、addはこっちでいじれないライブラリに入っているので、
呼び出し側でなんとかしたいのです。
0642デフォルトの名無しさん
2013/10/20(日) 15:53:34.07Cの関数ポインタ相手に変形は無理
0643デフォルトの名無しさん
2013/10/20(日) 15:56:00.60引数の型と種類は知っている前提でもなんとかなりませんか?
bindほど一般的な操作は求めていないので。
0644デフォルトの名無しさん
2013/10/20(日) 15:57:50.410645デフォルトの名無しさん
2013/10/20(日) 15:58:11.850646デフォルトの名無しさん
2013/10/20(日) 16:01:27.33Cの関数ポインタは関数のコードのアドレスそのものであり、付随するデータを受け渡す仕組みはない。よって付随するデータを受け渡す仕組みは関数ポインタを受け取るライブラリー側が別途提供するべきであり、もしそれがないならそれはそのライブラリーの欠陥と言える。
0647デフォルトの名無しさん
2013/10/20(日) 16:04:16.710648デフォルトの名無しさん
2013/10/20(日) 16:05:36.05ごめんね
0649デフォルトの名無しさん
2013/10/20(日) 16:06:56.23ありがとうございます。そもそもできないということが理解できなかったのですっきりしました。
>>647
(C++は怖い人がたくさんいるということを知らずに)初心者が見たら恐ろしくて質問どころじゃないですね・・・
0650デフォルトの名無しさん
2013/10/20(日) 16:09:17.84>>635
ぽいですね。
0651デフォルトの名無しさん
2013/10/20(日) 16:27:08.77使いまわすならmutexを忘れずにね
0652デフォルトの名無しさん
2013/10/20(日) 16:37:16.790653デフォルトの名無しさん
2013/10/20(日) 16:40:17.830654デフォルトの名無しさん
2013/10/20(日) 16:41:18.170655デフォルトの名無しさん
2013/10/20(日) 16:43:22.130656デフォルトの名無しさん
2013/10/20(日) 16:43:29.750657デフォルトの名無しさん
2013/10/20(日) 16:44:33.81関数オブジェクト関係てどこまでが昔のC++かわからん
これ,どこに書くの?
デバッグがおわって初めて見えるところって?
0661デフォルトの名無しさん
2013/10/20(日) 18:07:41.39どうみても関数宣言だろ
0663デフォルトの名無しさん
2013/10/20(日) 18:16:55.53char *strchr(const char *, int), strstr(const char *, const char *);
のような
一行で複数の関数を宣言することを良しとしないなら、
メンバー変数やローカル変数の宣言・定義でも同じルールを適用して
一行ずつ分けておけってんだ。
0664デフォルトの名無しさん
2013/10/20(日) 18:18:05.52>>663
> char *strchr(const char *, int), strstr(const char *, const char *);
char *strchr(const char *, int), *strstr(const char *, const char *);
こうだな。
カンマ区切りの複数宣言は最低だな!
かまいたちの夜?
0666デフォルトの名無しさん
2013/10/20(日) 19:11:53.700667デフォルトの名無しさん
2013/10/20(日) 19:37:41.930668デフォルトの名無しさん
2013/10/20(日) 20:41:24.64>>602にも謝れや
0669デフォルトの名無しさん
2013/10/20(日) 20:44:05.700670デフォルトの名無しさん
2013/10/20(日) 20:45:55.530671デフォルトの名無しさん
2013/10/20(日) 20:53:54.670672デフォルトの名無しさん
2013/10/20(日) 22:20:19.040673デフォルトの名無しさん
2013/10/20(日) 22:36:59.620674デフォルトの名無しさん
2013/10/20(日) 22:41:15.940675デフォルトの名無しさん
2013/10/20(日) 22:49:06.380676デフォルトの名無しさん
2013/10/20(日) 23:06:47.040677デフォルトの名無しさん
2013/10/21(月) 03:12:38.04インラインアセンブラ使用可って条件でいいなら無理やり出来なくもない
ただしこれはWindows(32bit)でしかテストしてない
ttp://ideone.com/DzKAXy
0678デフォルトの名無しさん
2013/10/21(月) 05:13:46.71それくらいしか手は無いわな。
けど汎用性持たせる努力しすぎだろ、なげぇww
0679デフォルトの名無しさん
2013/10/21(月) 07:05:51.62http://fscked.org/projects/minihax/c-functor-c-function-pointer-conversion
http://fscked.org/proj/minihax/autocode/functorptr.cc
0680デフォルトの名無しさん
2013/10/21(月) 07:59:47.31・closure()の長さがMAX_FCN_SIZE(128)を超える
・closure()の中で別の関数と共有された相対jmpがある
・closure()の中でスタック検査などで相対アクセスが挿入される
・thisptr=(Functor *)MAX_INTの即値が分割・変形される(MIPSとかでよくあるアレや、0xFFの符号拡張等)
・mallocで確保したメモリ領域の実行可能フラグが無く、それを検査される
などの問題が無ければOK。
0681デフォルトの名無しさん
2013/10/21(月) 08:15:07.90最後以外>>677と条件変わらなくね
同一環境のコードだから分割とかが問題になりそうもないし
0682デフォルトの名無しさん
2013/10/21(月) 11:46:59.31>>677だとdeclspec(naked)やomit-frame-pointerがあるからかなり確実性が上がってるように見える
・プロローグコード無しならコードサイズはまず膨れない
・関数本体がjmp先って事でも無い限り、全部インラインアセンブリなのでコードの共有は無い
・スタック検査は無効化してあるので挿入されない
・コードを含む構造体の相対アクセスなのでコード自体を変更しないから問題ない
・PAGE_EXECUTE_READWRITEしてるので問題ない
分割ってのはMIPSだかの固定長命令セットで上位movと下位movに分割される奴だけど、
そういうCPUをサポートするんでも無ければ問題ない・・・けど符号拡張はx86でも起きるぞ。
MOV EAX,0xFFFFFFFFがOR EAX,-1に変形されるのなんて良くある事。
関数本体がjmp先にあるってケースくらいじゃないかな、677で怖いのは。
俺は、DWORD __declspec(naked) Func(DWORD){__asm{
cmp [esp+4],0
jnz J1
mov eax,offset L0
ret
J1: mov eax,offset LE0
sub eax,offset L0
ret
L0: コード本体
LE0:}}ってやって長さと位置もインラインアセンブリ中で求めてた。
0683デフォルトの名無しさん
2013/10/21(月) 13:22:39.67処理系が同じなら同じ値なんだから別に起きても大丈夫でしょ。
0684デフォルトの名無しさん
2013/10/21(月) 15:48:39.31VCのx64クロスコンパイラは、インライン汗受け付けないとかじゃなかったっけ
どういうことかというと、めんどくさいぞこらMS手抜きしないで仕事しろ
一応フォローすると、ml64が添付になってるのでそれ使えぽい
gccいけるとこは、自由にゴリゴリ書いてもらうとして、Win32/64の場合、
ATLにの、this埋め込み付きスタブ関数生成関数があった希ガス
0685デフォルトの名無しさん
2013/10/21(月) 19:36:34.31http://www.officedaytime.com/tips/asm64/caution.html
これじゃメリットがないわな
0686デフォルトの名無しさん
2013/10/21(月) 19:46:34.260687デフォルトの名無しさん
2013/10/21(月) 19:50:34.96うそくせえ
allocaどうすんだよ。
0688デフォルトの名無しさん
2013/10/21(月) 20:24:33.98とても信じがたいねえ gcc とかでもだめなの?なんでだめになったの?
0689デフォルトの名無しさん
2013/10/21(月) 22:19:07.35コンパイラ開発してるんでもなきゃ
いまどきインラインアセンブラなんか書かんだろ
誰が使ってるんだ
0690デフォルトの名無しさん
2013/10/21(月) 22:31:21.53結局なんで不親切になってんだよw
amd64のいい逆汗ないかねえ、無料で
有償品でよければIDAが有名だが
0691デフォルトの名無しさん
2013/10/21(月) 22:33:14.350692デフォルトの名無しさん
2013/10/21(月) 23:49:57.20いやあの起きたらif(*(Functor**)end_ptr == (Functor*)MAX_INT)が成立しないんだが。
>>687-688
そもそもコレだけ解説しといてそれがなんと呼ばれる呼び出し規約かすら説明して無い。
Tipsや慣例(ミス削減のための規則含む)に基づく話がごっちゃになってるんじゃない?
0693デフォルトの名無しさん
2013/10/22(火) 20:15:12.14仕事でwinの64bitでインラインアセンブラ/アセンブラを使ったプログラムを作成したことある?
あるなら、どんなのをアセンブラ書いた?
0694デフォルトの名無しさん
2013/10/22(火) 22:09:56.550695デフォルトの名無しさん
2013/10/23(水) 12:08:25.00stat(name,&Stat);
誰だよこんなうんこ考えたやつ
0696デフォルトの名無しさん
2013/10/23(水) 12:40:32.690697デフォルトの名無しさん
2013/10/23(水) 13:05:32.13a(b,&A); // void a(int,struct a*){}
てことかな?
0698デフォルトの名無しさん
2013/10/23(水) 20:17:01.11気が狂ってるとしか思えない
0699697
2013/10/23(水) 20:30:15.920700デフォルトの名無しさん
2013/10/23(水) 20:45:42.96標準関数が標準の構造体と同じ名前って
なかなか無いよな
それ設計した奴は誰?
0701デフォルトの名無しさん
2013/10/23(水) 21:20:48.97エラー処理をする際に、その都度エラーメッセージボックスを表示させて
returnさせているのですが、
throwしてcatch{}にまとめた方がいいような気がしています
しかし、文字列を直接throwするのはなんだかおかしいんじゃないかと思っています、
例)
try
{
// 例外が起きそうな処理
throw "エラーだよ"
} catch (CString msg) {
AfxMessageBox(msg);
}
エラーメッセージは自分で決めたい場合もあると思うのですが、
どのようなエラー処理がベターなのか
色々サイトを見てみましたがつかめずにいます。
Cexxeptionを継承した自作クラスを作るべきなんでしょうか?
皆さんはどんなエラー処理をしてますか?
0702デフォルトの名無しさん
2013/10/23(水) 21:26:03.06無論。面倒ならCExceptionそのまま
0703デフォルトの名無しさん
2013/10/23(水) 21:35:14.55throw の引数はクラスにしておく
スーパークラスとしての exception クラスをつくっておき、個々のエラーは exception を個々に派生させる
0704デフォルトの名無しさん
2013/10/23(水) 21:46:39.89例外クラス間のツリー構造を設計するのが
システム全体を設計する中での最も重要な仕事なのだよ
0705デフォルトの名無しさん
2013/10/23(水) 22:00:41.430706デフォルトの名無しさん
2013/10/23(水) 22:13:46.39独自のRTTI相当機能を実装するための親クラスだったような。
まあMFC使うなら作法には従っておいた方がいい。
deleteの仕方が独特でキモイけど。
0707デフォルトの名無しさん
2013/10/23(水) 22:19:09.48同感
0708デフォルトの名無しさん
2013/10/23(水) 22:20:15.130709デフォルトの名無しさん
2013/10/23(水) 22:23:18.48new して投げるの?
0710デフォルトの名無しさん
2013/10/23(水) 22:33:44.460711デフォルトの名無しさん
2013/10/24(木) 00:45:40.98失敗してたら THROW、成功してたら delete なのか
面倒だな・・・
END_CATCH に delete がなかったと記憶してるけど
delete はどうするの?
0712デフォルトの名無しさん
2013/10/24(木) 00:55:59.92e->Delete();
}
ってやるらしい
0713デフォルトの名無しさん
2013/10/24(木) 01:00:00.95うへえ
じゃあこれやってないとリークすんの?
0714デフォルトの名無しさん
2013/10/24(木) 01:20:58.750715デフォルトの名無しさん
2013/10/24(木) 01:33:31.220716デフォルトの名無しさん
2013/10/24(木) 07:33:57.370717デフォルトの名無しさん
2013/10/24(木) 15:25:33.16{
hoge( int ){}
};
hoge h( int() ); // warning C4930: 'hoge h(int (__cdecl *)(void))': プロトタイプされている関数が呼び出されませんでした (変数の定義が意図されていますか?)
なぜ警告でますか?
警告でないようにするにはどうすればいいですか
0718デフォルトの名無しさん
2013/10/24(木) 15:31:16.23int()の中に引数がないのはなんで?
0719デフォルトの名無しさん
2013/10/24(木) 15:39:07.31hoge を返す h という関数を宣言したいということでよろしいか?
0720デフォルトの名無しさん
2013/10/24(木) 15:44:16.57だと平気なのはなんでですか
0721デフォルトの名無しさん
2013/10/24(木) 15:50:07.01迷惑だから他でやれ
0722デフォルトの名無しさん
2013/10/24(木) 15:54:34.51プログラム以前に知能が低いw
0723デフォルトの名無しさん
2013/10/24(木) 16:00:04.96hogeを覚えたり調べたりする暇はあってもC++の入門書を読む暇はないんだね〜へぇ〜すごく頭良さそう
毎日2〜3時間ゲームやってるくせに
毎日「忙しい忙しい」と言ってる奴が昔会社にいた
うだつのあがらない馬鹿だったけどね
0724デフォルトの名無しさん
2013/10/24(木) 16:05:58.20hoge h(returns_int);
にすればいいんじゃない
0725デフォルトの名無しさん
2013/10/24(木) 16:14:10.79>hoge h(returns_int);
底辺ドカタだとこんなコード書いても平気なんだなw
typedefwwww
0726デフォルトの名無しさん
2013/10/24(木) 16:19:32.940727デフォルトの名無しさん
2013/10/24(木) 16:33:23.61こういうのを鵜呑みにしてるんだろうな。
生きてる価値がない。
0728デフォルトの名無しさん
2013/10/24(木) 16:48:28.590729バカ晒しage
2013/10/24(木) 17:18:34.25typedef int(*returns_int)();
hoge h(returns_int);
にすればいいんじゃない
0730デフォルトの名無しさん
2013/10/24(木) 18:52:41.67int()
↑これは何がし.たいの?
0731デフォルトの名無しさん
2013/10/24(木) 18:57:50.130732デフォルトの名無しさん
2013/10/24(木) 18:58:10.50荒らしにレスするな
お前も荒らしになるぞ
0733デフォルトの名無しさん
2013/10/24(木) 18:59:28.69お前だけが荒らしなので大丈夫(^^)
0734デフォルトの名無しさん
2013/10/24(木) 19:02:09.45hoge h{tv}; //で、なんじゃねーの
0735デフォルトの名無しさん
2013/10/24(木) 19:04:58.980736デフォルトの名無しさん
2013/10/24(木) 19:05:28.21よう荒らし
自己紹介乙
0737デフォルトの名無しさん
2013/10/24(木) 19:25:04.87typedef hoge int;
が標準となります。素のintは使用禁止です。
0738デフォルトの名無しさん
2013/10/24(木) 19:32:11.92つまんねーhageだな
shineばいいのに
0739デフォルトの名無しさん
2013/10/24(木) 19:38:15.220740デフォルトの名無しさん
2013/10/24(木) 19:48:30.700741デフォルトの名無しさん
2013/10/24(木) 20:08:16.400742デフォルトの名無しさん
2013/10/24(木) 20:09:15.010743デフォルトの名無しさん
2013/10/24(木) 20:17:49.37わざわざコードを一行増やす理由、
及び
わざわざ文字数の多い文字列に置き換える理由、
が不明瞭
hoge厨は精神異常
0744デフォルトの名無しさん
2013/10/24(木) 20:20:14.07intは iHogeにしろ
0745デフォルトの名無しさん
2013/10/24(木) 20:22:34.50何もしたくない。int型なのは単なる例
コードの意味を聞いてるんじゃなくて現象を聞いてるの
0746デフォルトの名無しさん
2013/10/24(木) 20:33:24.17vector<CString> hoge()[
0747デフォルトの名無しさん
2013/10/24(木) 21:02:29.23hoge h((int()));
0748デフォルトの名無しさん
2013/10/24(木) 21:20:51.54コンパイラには>>719として解釈されるが
>>720の可能性があるので警告してるんでしょ
>>720にしたいならそうすればいいし
>>719なら>>724にすれば警告はなくなる
0749デフォルトの名無しさん
2013/10/25(金) 13:59:19.52ifstream file("test.dat");
list<int> data(istream_iterator<int>(file), istream_iterator<int>());
綺麗な顔してるプログラムだろ?
これ変な動きするんだぜ?
0750デフォルトの名無しさん
2013/10/25(金) 18:37:00.59どうしてこんなKUSO仕様がISOで承認されたのか理解に苦しむ
0751デフォルトの名無しさん
2013/10/25(金) 20:59:41.980752デフォルトの名無しさん
2013/10/26(土) 01:03:06.36C++には糞仕様大好きhoge使いが多いからよ
0753デフォルトの名無しさん
2013/10/26(土) 08:35:34.62istream_iterator<int>::end()
0754デフォルトの名無しさん
2013/10/26(土) 09:49:51.33普通にforで回しちゃなぜいけないのですか?
一々関数オブジェクトなんか作成しなきゃいけないのに・・・
notなんてifの中の条件を!すればいいだけでしょ?
0755デフォルトの名無しさん
2013/10/26(土) 12:24:55.741行で簡潔に書くため
ラムダがサポートされているんだから関数オブジェクトもすっきり書ける
0756デフォルトの名無しさん
2013/10/26(土) 14:06:13.63いろいろ使いまわせるファンクタなら独立して書く価値がある。
0757デフォルトの名無しさん
2013/10/26(土) 14:19:38.31C++以外は割とイレギュラーだもんな
0758デフォルトの名無しさん
2013/10/26(土) 14:21:07.720759デフォルトの名無しさん
2013/10/26(土) 14:22:13.52安心してusing namespace std;できる程度にとどめてほしかった…
0760デフォルトの名無しさん
2013/10/26(土) 14:27:41.34[](string &s){cout << s << endl;});
for ( auto &s : c )
cout << s << endl:
こんな感じだっけ?
0761デフォルトの名無しさん
2013/10/26(土) 14:37:06.27C++だと実装むずかしいのかな。
0762デフォルトの名無しさん
2013/10/26(土) 14:39:56.82++11のforはなんか気持ち悪い
いまさらforeachを予約語にするのも・・・てことか
0763デフォルトの名無しさん
2013/10/26(土) 14:41:18.41using namespace std;はやってもせいぜい関数内に留めて
基本常にstd::付けた方がいいよ
0764デフォルトの名無しさん
2013/10/26(土) 14:48:38.94Javaの真似しただけだろ
0765デフォルトの名無しさん
2013/10/26(土) 15:55:59.67Javaと同じ書式を採用したようだけど内部の展開が悪いみたい
ちなみにgcc
0766デフォルトの名無しさん
2013/10/26(土) 16:15:45.240767デフォルトの名無しさん
2013/10/26(土) 16:19:37.450768デフォルトの名無しさん
2013/10/26(土) 16:28:19.380769デフォルトの名無しさん
2013/10/26(土) 16:41:46.40ケースバイケース
0770デフォルトの名無しさん
2013/10/26(土) 17:04:25.60配列のほうが勝ってるケースってある?
アクセスとか挿入とかのコストとかの観点以外で
0771デフォルトの名無しさん
2013/10/26(土) 17:12:39.99アクセスとかのコストで配列のほうが勝ってるケースがあるって自分で分ってるじゃないか。
0772デフォルトの名無しさん
2013/10/26(土) 17:21:52.500773デフォルトの名無しさん
2013/10/26(土) 17:24:21.45速度が重要なケースでは例えば自動変数の配列で良い所でvectorを使ったりしないなあ
今どき他の言語じゃなくC++を使う理由は「速度」にあると思ってるよ
0774デフォルトの名無しさん
2013/10/26(土) 17:25:25.70そんな馬鹿な
0775デフォルトの名無しさん
2013/10/26(土) 18:10:10.420776デフォルトの名無しさん
2013/10/26(土) 18:16:54.61測れよ
0777デフォルトの名無しさん
2013/10/26(土) 18:25:23.810778デフォルトの名無しさん
2013/10/26(土) 18:29:21.670779デフォルトの名無しさん
2013/10/26(土) 18:31:03.94>>773
いや速度やメモリ使用量以外でもなんかメリットあるのかなぁと思って
今はそんな速度にこだわってないから,なんでもかんでもlistを使ってるんだけど
他の人はどうなのか気になってた
できればC++は難しいから使いたくないんだけど,業務だからしょうがないんだよなー
0780デフォルトの名無しさん
2013/10/26(土) 19:34:04.19どんなコードで比較したのかを書けよ
特にお前の言う「生配列のポインタ」ってのがどんなのか
イテレータが生ポより早いなんてありえないからw
0781デフォルトの名無しさん
2013/10/26(土) 19:38:42.98イテレータのおかげと勘違いしたとかじゃない?
0782デフォルトの名無しさん
2013/10/26(土) 20:01:54.650783デフォルトの名無しさん
2013/10/26(土) 20:24:49.20そのAPIのコストが高かったとかいう可能性もあるな。
0784デフォルトの名無しさん
2013/10/26(土) 20:28:42.10イテレータなんて良くて生ポそのものなのであって。。。
0785デフォルトの名無しさん
2013/10/26(土) 20:47:29.69ほらよ
http://ideone.com/S7i2Qa
0786デフォルトの名無しさん
2013/10/26(土) 20:56:27.44これは笑いどころか?
とりあえず配列のほうは0クリアされてない(=キャッシュにのってない)ので
比較できる条件ではない
0787デフォルトの名無しさん
2013/10/26(土) 21:00:01.410788デフォルトの名無しさん
2013/10/26(土) 21:01:55.09これは
auto e = &a[SIZE - 1];
こうだな
おれの環境では最適化したら似たり寄ったりだった
0789デフォルトの名無しさん
2013/10/26(土) 21:03:31.53それは&a[SIZE]でいい
しかしイテレータを<で比較する人はまだ絶滅してなかったか
0790デフォルトの名無しさん
2013/10/26(土) 21:20:51.9210年前のC++コードみたいだw
0791デフォルトの名無しさん
2013/10/26(土) 21:22:31.34あっ本当だ。いろいろいじってるうちに間違えちゃった。
修正版
http://ideone.com/VQdY0v
0792デフォルトの名無しさん
2013/10/26(土) 21:25:23.78まあそう言いなさんな
あくまでも生ポとイテレータの速度比較が目的なんだから
0793デフォルトの名無しさん
2013/10/26(土) 21:31:22.06今どきのってどんな感じなの?
いや,煽りとかじゃなく
0794デフォルトの名無しさん
2013/10/26(土) 21:32:56.210795デフォルトの名無しさん
2013/10/26(土) 21:41:57.39memsetとか、後置インクリメントとかあったからさ。
ちょっと思った事をそのまま書き込んでしまったんだ。すまん。
0796デフォルトの名無しさん
2013/10/26(土) 21:50:08.86今見たらポインタとイテレータの速度比較の話にすりかわってら
0797デフォルトの名無しさん
2013/10/26(土) 21:54:07.190798デフォルトの名無しさん
2013/10/26(土) 21:57:47.190799デフォルトの名無しさん
2013/10/26(土) 21:57:52.14そのコードでvectorと配列に有意っぽい差がついてるのが興味深いな
コンパイル環境教えてほしい。逆アセしてみたい
0800デフォルトの名無しさん
2013/10/26(土) 21:58:02.06一方にイテレータ使うと比較対象が曖昧だわな
生配列と生ポ
vectorと生ポ
これらで比較すりゃいい
0801デフォルトの名無しさん
2013/10/26(土) 21:58:44.12いや,純粋に気になっただけなんだ
さんくす
0802デフォルトの名無しさん
2013/10/26(土) 22:01:29.94後置インクリメントはコピー生成と同じ。
0803デフォルトの名無しさん
2013/10/26(土) 22:08:53.37それって型依存だよね?
0804デフォルトの名無しさん
2013/10/26(土) 22:09:49.000805デフォルトの名無しさん
2013/10/26(土) 22:10:41.16プリミティブ型じゃどっちでも って感じだね
0806デフォルトの名無しさん
2013/10/26(土) 22:19:24.80俺の環境だと差出たけど
っつうか、同じコードなのにvectorが配列より4倍くらい遅い
0807デフォルトの名無しさん
2013/10/26(土) 22:24:41.26型関係なくコピーはされる。
じゃないと部分式が評価される時点で変更が加えられちゃう。
/ideone.com/WaZZ5x
コストの大小で言えば、もちろん型によるだろうけど。
0808デフォルトの名無しさん
2013/10/26(土) 22:28:49.56値型はCと同じ実装じゃないのけ
0809デフォルトの名無しさん
2013/10/26(土) 22:38:23.45コンパイルオプションにちゃんと-O2付けてる?
0810デフォルトの名無しさん
2013/10/26(土) 22:41:00.02すまん、プリミティブ型の話か。
実際に比べた事はないが、まず変わらないだろうな。
0811デフォルトの名無しさん
2013/10/26(土) 22:45:41.09うそこけ型は関係あるだろ
プリミティブ型のi(int)を++i;した場合もi++;した場合も最適化されて↓になったぞ
movl %ebx, 4(%esp)
addl $1, %ebx
0812デフォルトの名無しさん
2013/10/26(土) 22:46:08.38O0だった
O2つけたら確かにほとんど変わらない
0813デフォルトの名無しさん
2013/10/26(土) 22:47:18.09すまない誤解を与える文章だった。
変わらないというのは速度の話だ。
0814デフォルトの名無しさん
2013/10/26(土) 22:48:02.68最適化はたぶんデフォルトの-O2だな
0815デフォルトの名無しさん
2013/10/26(土) 22:51:32.93> 型関係なくコピーはされる。
変更前の値を使ってないなら、コピーを省略することぐらいは普通にやるでしょ。
0816デフォルトの名無しさん
2013/10/26(土) 22:55:44.120817デフォルトの名無しさん
2013/10/26(土) 23:02:22.43それはちょっと違くないか?
コンストラクタ通る時点で最適化止まるだろ。
0818デフォルトの名無しさん
2013/10/26(土) 23:12:56.99ごめん、マジで意味わからん
>>817
コンストラクタ?
ごめん、こっちも意味わからん...
0819デフォルトの名無しさん
2013/10/26(土) 23:22:22.99コピーコンストラクタで発生する副作用は最適化で消えないって意味だろ。
コピーコンストラクタで発生する副作用が全て最適化で消滅する場合は最適化の結果コピーも消えるだろうけど。
0820デフォルトの名無しさん
2013/10/26(土) 23:36:01.32最適化って関数呼び出しとか、一定の条件で止まっちゃうのよ。
もしかしてインラインなクラス前提で話してる?
0821デフォルトの名無しさん
2013/10/26(土) 23:36:02.83消えるのか、消えないのかはっきりしろよ...
0822デフォルトの名無しさん
2013/10/26(土) 23:37:11.80そもそもプリミティブの話だよ...
0823デフォルトの名無しさん
2013/10/26(土) 23:37:18.30これが一番意味分からん
0824デフォルトの名無しさん
2013/10/26(土) 23:39:07.94プリミティブ型ならそもそもコピー自体しない
省略って何だって、やっぱ意味不明
0825デフォルトの名無しさん
2013/10/26(土) 23:52:35.550826デフォルトの名無しさん
2013/10/27(日) 01:25:11.50x = x - (( x >> 1 ) & 0x55555555);
x = (x & 0x33333333) + (( x >> 2) & 0x33333333);
x = ( x + ( x >> 4 )) & 0x0F0F0F0F;
x = x + ( x >> 8 );
x = x + ( x >> 16 );
return x & 0x0000003F; }
ネットで高速ビットカウントのソースを見つけました。64bitで使うために型と
0x3333333333333333
0x5555555555555555
0x0F0F0F0F0F0F0F0F
に変更したのですが32bitまでしか数えてくれません。
あとどこが修正必要でしょうか。
0827デフォルトの名無しさん
2013/10/27(日) 01:26:01.810828デフォルトの名無しさん
2013/10/27(日) 01:51:30.6232bitシフトして足すのが足りないんじゃねえの?
0829デフォルトの名無しさん
2013/10/27(日) 07:27:00.69> プリミティブ型ならそもそもコピー自体しない
大丈夫か?
0830デフォルトの名無しさん
2013/10/27(日) 08:44:10.31827 828に加えて
returnのところの3fを7fにしないと何やっても31までしか返らんよ?
0831デフォルトの名無しさん
2013/10/27(日) 09:26:41.92わろた
0832デフォルトの名無しさん
2013/10/27(日) 09:29:12.59> x = x - (( x >> 1 ) & 0x55555555);
この、元の式がおかしい
0833デフォルトの名無しさん
2013/10/27(日) 09:29:44.57どうして?
0834デフォルトの名無しさん
2013/10/27(日) 10:24:20.11>>811
0835デフォルトの名無しさん
2013/10/27(日) 11:00:01.86途中で意見を変えたクズ
0836デフォルトの名無しさん
2013/10/27(日) 11:12:47.84おいおい、最適化の話との区別もできなくなってるのかよ...
>>835
途中で?
この話は >>795 が起点だと思うが、どこで変わったと思ったんだ?
0837デフォルトの名無しさん
2013/10/27(日) 11:24:42.820838デフォルトの名無しさん
2013/10/27(日) 12:41:37.44>おいおい、最適化の話との区別もできなくなってるのかよ...
C言語からやり直せ
0839デフォルトの名無しさん
2013/10/27(日) 13:16:15.38> C言語からやり直せ
ますます、イミフ (w
0840デフォルトの名無しさん
2013/10/27(日) 14:04:10.32発想は察してやれ。
こういう考えの老害はよくいるだろ?
0841デフォルトの名無しさん
2013/10/27(日) 14:08:12.46ウザい消えろ
0842デフォルトの名無しさん
2013/10/27(日) 14:21:47.76どちらにしても>>840みたいなクズは2ちゃんにはよくいる
0843デフォルトの名無しさん
2013/10/27(日) 14:29:11.810844デフォルトの名無しさん
2013/10/27(日) 14:43:37.65オブジェクト指向だけやってきた弊害だろうか
0845デフォルトの名無しさん
2013/10/27(日) 14:50:58.350846デフォルトの名無しさん
2013/10/27(日) 15:17:26.77javaでも違うわボケ
0847デフォルトの名無しさん
2013/10/27(日) 15:57:59.37必ず100回目で「sqrt domain error」が必ず出ます。
数値を色々変えてみても必ず起きます.
sqrt domain errorはルートの中身が負のときでるエラーだと思うのですが
それ以外に出る原因はありますか?
0848デフォルトの名無しさん
2013/10/27(日) 15:58:44.38ソース晒して
0849デフォルトの名無しさん
2013/10/27(日) 16:25:06.84そんな事言ってる奴はいない
0850デフォルトの名無しさん
2013/10/27(日) 16:59:13.050851デフォルトの名無しさん
2013/10/27(日) 17:03:13.56お前のプログラムが間違えている。これ以外の原因はない
0852デフォルトの名無しさん
2013/10/27(日) 17:22:19.61つ http://codepad.org/, http://ideone.com/
0853デフォルトの名無しさん
2013/10/27(日) 17:54:21.77コンパイラが翻訳時に間違えている可能性もあんじゃん
0854デフォルトの名無しさん
2013/10/27(日) 18:02:55.94そいつのバグで実際にコンパイラがバグってたことは一度もない。
0855デフォルトの名無しさん
2013/10/27(日) 18:17:52.150856デフォルトの名無しさん
2013/10/27(日) 18:28:09.33assert(value >= 0);
sqrt(value);
0857デフォルトの名無しさん
2013/10/27(日) 18:32:52.33入力値が非数または数値として不正なビットパターンの場合
0858デフォルトの名無しさん
2013/10/27(日) 19:58:06.34たしかに、結構長い間マやってるけど、コンパイラのバグにぶち当たったのは X68K の gcc だけだな。
0859デフォルトの名無しさん
2013/10/27(日) 20:03:28.360860デフォルトの名無しさん
2013/10/27(日) 20:09:25.87「あいつは何か良い知識の仕入先を持ってるに違いない」と思う奴
今までに10回位はそういう事聞かれたわ
0861デフォルトの名無しさん
2013/10/27(日) 20:17:34.9510回くらいそういうこと聞かれたわ―
0862デフォルトの名無しさん
2013/10/27(日) 20:19:38.10hoge サイト
0863デフォルトの名無しさん
2013/10/27(日) 20:20:25.750864デフォルトの名無しさん
2013/10/27(日) 20:21:23.030865デフォルトの名無しさん
2013/10/27(日) 20:28:58.94そういやそうだな・・・5=0b0101、3=0b0011・・・ってコレはコレでOKじゃん。引っかかるとこだった。
2bitだけ見るとちゃんとカウント出来てる。
00なら00-00=00、01なら01-00=01
10なら10-01=01、11なら11-01=10
0866デフォルトの名無しさん
2013/10/27(日) 20:33:50.610867デフォルトの名無しさん
2013/10/27(日) 21:15:52.41ググるにしても調べたいことが明確じゃないと混乱するってのはあるかもね
まあ20年近くC++やってても正直全容がわからんし、自分のペースで学べばいいんじゃない
0868デフォルトの名無しさん
2013/10/27(日) 21:56:06.370869デフォルトの名無しさん
2013/10/27(日) 21:59:06.730870デフォルトの名無しさん
2013/10/27(日) 21:59:55.930871デフォルトの名無しさん
2013/10/27(日) 21:59:57.69ProgrammingLanguageC++とか読んでるんだろうか
0872デフォルトの名無しさん
2013/10/27(日) 22:28:54.950873デフォルトの名無しさん
2013/10/27(日) 22:32:13.16i++でもめるぐらいだし
0874デフォルトの名無しさん
2013/10/27(日) 22:42:22.490875デフォルトの名無しさん
2013/10/27(日) 22:44:22.280876デフォルトの名無しさん
2013/10/27(日) 23:09:44.32教授にいわれても
0877デフォルトの名無しさん
2013/10/27(日) 23:09:57.430878デフォルトの名無しさん
2013/10/27(日) 23:24:15.81effectiveは漫談として読め、もしくは読むな
0879デフォルトの名無しさん
2013/10/27(日) 23:24:30.02あまりに誤植、誤訳が多い糞本だったので、
ブックオフに売りにいったら0円って言われたから、重いのでそのまま引き取ってもらった。
0880デフォルトの名無しさん
2013/10/27(日) 23:27:57.360881デフォルトの名無しさん
2013/10/27(日) 23:56:33.38で教授が読めないまともなコードは全部変な癖って片付ける
0882デフォルトの名無しさん
2013/10/28(月) 00:05:14.55どこが変かはよく分からんが
0883デフォルトの名無しさん
2013/10/28(月) 00:06:33.53教育的 != 実用的
必ずしもそうとは限らない
0884デフォルトの名無しさん
2013/10/28(月) 01:42:17.29主流なわけねーよ。
-Weffc++ を日常的に使ってる奴は少数派だ。
常に付けるべしなんて言う奴はそこからさらに少数派だ。
0885デフォルトの名無しさん
2013/10/28(月) 01:46:53.28頻繁に例外安全ではないコードがサンプルに出てきて
そしてこれで正しいんだとのドヤ顔
プロジェクトにそんな馬鹿が居たら速攻で首になるレベル
0886デフォルトの名無しさん
2013/10/28(月) 01:49:52.290887デフォルトの名無しさん
2013/10/28(月) 01:51:47.290888デフォルトの名無しさん
2013/10/28(月) 01:55:38.63データメンバーをpublicにするなという話。
std::pairのような設計は完全にNGだと主張されている。まるで子供。ほんと馬鹿。
徹底したカプセル化主義者かと思いきや、データメンバーを外から丸見えにするアクセサーをひたすら肯定してる。
まず内部のデータ構造ありきで、インターフェイスは後から内部に依存するように設計されてるじゃないか。馬鹿かこの馬鹿。
この馬鹿に洗脳されたら生涯駄目人間だからな。気を付けろ。
0889デフォルトの名無しさん
2013/10/28(月) 02:09:43.370890デフォルトの名無しさん
2013/10/28(月) 02:14:07.00operator=の正しい書き方はこうだ
の例でもやらかしてるから救いようがない
0891デフォルトの名無しさん
2013/10/28(月) 02:46:49.70これはべつにC++に限らんけどね
0892デフォルトの名無しさん
2013/10/28(月) 02:52:56.140893デフォルトの名無しさん
2013/10/28(月) 07:03:21.990894デフォルトの名無しさん
2013/10/28(月) 09:31:48.94だってさ
0895デフォルトの名無しさん
2013/10/28(月) 09:53:05.340896デフォルトの名無しさん
2013/10/28(月) 10:04:02.41上手にコツを掴むと気にしなくても例外安全になれるから気にしなくていいぞ
0897デフォルトの名無しさん
2013/10/28(月) 11:10:46.92>徹底したカプセル化主義者かと思いきや、データメンバーを外から丸見えにするアクセサーをひたすら肯定してる。
変更を考慮すりゃそうするのが当たり前だろ
0898デフォルトの名無しさん
2013/10/28(月) 11:53:47.98こういう駄目人間ができるから、effectiveは話半分で読むのがいいんだな
0899デフォルトの名無しさん
2013/10/28(月) 12:12:20.740900デフォルトの名無しさん
2013/10/28(月) 12:38:26.030901デフォルトの名無しさん
2013/10/28(月) 13:09:47.70その文盲に消えてくれって言ってるんだろ>>899は。
0902デフォルトの名無しさん
2013/10/28(月) 13:10:11.26その段階から理解できずに即物的なテクニック・コード例としてしか読めない人には害があるでしょうね
0903デフォルトの名無しさん
2013/10/28(月) 13:18:08.35継承したクラスがデータメンバの設置や読み出しで、
何か処理をはさみたいと思っても、できなくなる。
こんなの、Effective C++以前の問題。
0904デフォルトの名無しさん
2013/10/28(月) 13:48:24.89class File : public Base {
ofstream stream_;
というクラスに
ofstream const& stream() const { return stream_; }
というメソッドを足す奴はeffective c++の洗脳を受けてる
0905デフォルトの名無しさん
2013/10/28(月) 14:26:06.44どの章に書いてあるの?
0906デフォルトの名無しさん
2013/10/28(月) 14:55:26.15const付けろって言ってる章は、
アクセス制限がより強いメンバを返す時は、
変更可能にして返すなっていう、凄く当たり前な話してるだけで、
なんでもpublicで公開しろなんて書いてないよ。
0907デフォルトの名無しさん
2013/10/28(月) 15:03:05.12なのに、机の上にeffc++置いてる奴はアクセサーを増やすんだよな
七不思議の一つだ
0908デフォルトの名無しさん
2013/10/28(月) 15:10:20.580909デフォルトの名無しさん
2013/10/28(月) 15:26:39.33サブリミナル効果
0910デフォルトの名無しさん
2013/10/28(月) 15:40:09.94あれに染まると思考停止して安直にパターンにはめ込みたがる癖までつくんだよ
まるでゾンビプログラマー
0911デフォルトの名無しさん
2013/10/28(月) 15:41:22.910912デフォルトの名無しさん
2013/10/28(月) 15:52:45.120913デフォルトの名無しさん
2013/10/28(月) 16:00:36.07一つはeffective C++だと分かったが他に無い?
あと、アクセサを増やしてはいけないことを説明してる本はないか?
0914デフォルトの名無しさん
2013/10/28(月) 16:23:20.47自分が理解できないからって適当言っちゃ駄目だぞ
0915デフォルトの名無しさん
2013/10/28(月) 16:25:00.58ゲッタセッタ教の譚か
0916デフォルトの名無しさん
2013/10/28(月) 16:36:14.440917デフォルトの名無しさん
2013/10/28(月) 16:58:24.93ずいぶん前だけど「アホ!これがオブジェクト指向というものだ!」
とか宣うプロマネの下で仕事したことある
0918デフォルトの名無しさん
2013/10/28(月) 17:39:08.670919デフォルトの名無しさん
2013/10/28(月) 17:44:53.32Java普及より古い
0920デフォルトの名無しさん
2013/10/28(月) 17:52:14.27賛同できないルールも多々あったけど、名著だったと思うよ。
しかし古くなり過ぎた。
C++で仕事をする人は読んでおいて損はないと思う。
これが絶対のルールだとは思わず、こう考える人もいるのだくらいの気持ちで読めば、
結構いいヒントをたくさんもらえるんじゃないかな。
あと例外絡みのバグのほとんどはRAIIで駆逐できる。
0921デフォルトの名無しさん
2013/10/28(月) 17:59:58.68Q1 Effective C++を信用してはならない書だと思うか?
Q2 ゲッタセッタは極力減らすべきか?
この相関が分かれば一発で解ける問題だな
0922デフォルトの名無しさん
2013/10/28(月) 18:01:02.110923デフォルトの名無しさん
2013/10/28(月) 18:05:54.23be動詞で表現しづらいとき思いっきり無駄な考慮時間つかうんだけど
0924デフォルトの名無しさん
2013/10/28(月) 18:30:31.330925デフォルトの名無しさん
2013/10/28(月) 18:32:36.72この考え方が信者っぽいww
0926デフォルトの名無しさん
2013/10/28(月) 18:44:26.900927デフォルトの名無しさん
2013/10/28(月) 19:19:09.96Java/C#
0928デフォルトの名無しさん
2013/10/28(月) 19:33:08.71考え方じゃなくて、本当に唾棄すべき項目の質問だっての
番号付いてるから分かりやすいでしょ
0929デフォルトの名無しさん
2013/10/28(月) 19:56:57.66各論から先に行くのはEffective C++の影響?
0930デフォルトの名無しさん
2013/10/28(月) 20:07:06.460931デフォルトの名無しさん
2013/10/28(月) 20:41:01.43はあ・・・
0932デフォルトの名無しさん
2013/10/28(月) 20:51:10.79つまり最初から無いことを願ってた?
0933デフォルトの名無しさん
2013/10/28(月) 20:53:35.00そういう話をしたいなら、お前が率先して列挙の作業やれば?
そんなお前とそんな話をしたい奴がどれだけ居るか知らんけど
0934デフォルトの名無しさん
2013/10/28(月) 20:57:45.47具体例は無いけど適当に批判してみただけです
0935デフォルトの名無しさん
2013/10/28(月) 20:57:46.990936デフォルトの名無しさん
2013/10/28(月) 21:07:28.49>>932
>>933
これがhoge厨です
彼らはhoge本しか読んだことがないので知ったかぶりしかできません
ご理解されたし
0937デフォルトの名無しさん
2013/10/28(月) 21:19:30.860938デフォルトの名無しさん
2013/10/28(月) 21:33:19.29既に色々出されてるのでは?
0939デフォルトの名無しさん
2013/10/28(月) 21:34:31.93それって、見えないフリの芝居なの?
それとも本当に見えなくなるの?
0940デフォルトの名無しさん
2013/10/28(月) 21:38:38.290941デフォルトの名無しさん
2013/10/28(月) 21:41:26.51なるべく関数値で返すようにしろってこと?
0942デフォルトの名無しさん
2013/10/28(月) 21:43:06.81ググっても説明が見つかりませんでした
0943デフォルトの名無しさん
2013/10/28(月) 21:43:12.670944デフォルトの名無しさん
2013/10/28(月) 21:59:12.210945デフォルトの名無しさん
2013/10/28(月) 22:04:01.320946デフォルトの名無しさん
2013/10/28(月) 22:04:51.47よく知らんけど。
0947デフォルトの名無しさん
2013/10/28(月) 22:06:24.90C++なんか捨てて、C#やれよ
0948デフォルトの名無しさん
2013/10/28(月) 22:09:00.960949デフォルトの名無しさん
2013/10/28(月) 22:10:44.04一体なにがそう思い込ませてるのか、逆に気になる。
0950デフォルトの名無しさん
2013/10/28(月) 22:18:43.81Expressでいいがな
0951デフォルトの名無しさん
2013/10/28(月) 22:20:14.330952デフォルトの名無しさん
2013/10/28(月) 22:22:23.320953デフォルトの名無しさん
2013/10/28(月) 22:26:36.74っつうか、Effective C++以外でもアクセサよりパブリック変数を積極的に使ってる本なんかあるのか?
0954デフォルトの名無しさん
2013/10/28(月) 22:33:46.38> っつうか、Effective C++以外でもアクセサよりパブリック変数を積極的に使ってる本なんかあるのか?
誰もそんな対比してないのに、なにいってんだこいつ
0955デフォルトの名無しさん
2013/10/28(月) 22:37:51.64典型的なゲッタセッタ病の重症患者
たぶん直らないので真面目に相手しない方がいい
0956デフォルトの名無しさん
2013/10/28(月) 22:39:33.170957デフォルトの名無しさん
2013/10/28(月) 22:41:13.21ちょっとバカは黙ってて
0958デフォルトの名無しさん
2013/10/28(月) 22:42:58.45釣り下手だな
0959デフォルトの名無しさん
2013/10/28(月) 22:43:20.29怒らなかったらバカじゃないよ。
0960デフォルトの名無しさん
2013/10/28(月) 22:47:06.02更正を頑張っても五人に一人か二人くらい
0961デフォルトの名無しさん
2013/10/28(月) 22:52:24.460962デフォルトの名無しさん
2013/10/28(月) 23:02:32.45もう完治不可能だろ
0963デフォルトの名無しさん
2013/10/28(月) 23:05:33.800964デフォルトの名無しさん
2013/10/28(月) 23:27:23.63カプセル化してるつもりの奴ね
データ主体のクラスならアクセサだらけでもpublicメンバ変数だらけでも良いんだが
0965デフォルトの名無しさん
2013/10/28(月) 23:30:14.75ってスレ建てたら意外と面白いことになるかもしれない
0966デフォルトの名無しさん
2013/10/28(月) 23:30:31.96時間の問題
0967デフォルトの名無しさん
2013/10/28(月) 23:32:41.96そもそもパブリックメンバー派は居ないから
0968デフォルトの名無しさん
2013/10/28(月) 23:36:36.06DEFINE_PROPERTY(std::vector<Player>, member);
ゲッタセッタ重症者の典型例
0969デフォルトの名無しさん
2013/10/29(火) 00:26:20.99ゲッタセッタやるやつに苛められてたのかな
ざまあw
0970デフォルトの名無しさん
2013/10/29(火) 00:43:39.760971デフォルトの名無しさん
2013/10/29(火) 01:28:03.520972デフォルトの名無しさん
2013/10/29(火) 01:29:53.660973デフォルトの名無しさん
2013/10/29(火) 01:30:08.280974デフォルトの名無しさん
2013/10/29(火) 01:37:38.08#define defvar(type,name) private:type m##name;public:void set##name(type new##name){m##name=new##name;}public:type& get##name(void){return m##name;}
うわぁ・・・・・・・・・・・
0975デフォルトの名無しさん
2013/10/29(火) 02:04:48.85さすがにこんなこと始めるまで悪化したら
問題点が多すぎて直る気配がしない
0976デフォルトの名無しさん
2013/10/29(火) 02:21:36.65まあ、条件分岐やら上限チェックやら入れてるから仕方ないんだけども。
0977デフォルトの名無しさん
2013/10/29(火) 02:38:37.04粒度を見直してみたらどうか?ってじっちゃが言ってた。
あとC++のクラスはJavaみたいに手なりでは書けないものだから、クラス設計してテスト
書いてからコーディングするクセをつけないと後々苦労するってばっちゃが言ってた。
0978デフォルトの名無しさん
2013/10/29(火) 02:42:06.320979デフォルトの名無しさん
2013/10/29(火) 02:50:24.39クラス減らしたがる人と
アクセサ増やしたがる人は
共通してんの?
0980デフォルトの名無しさん
2013/10/29(火) 03:05:35.31必要性ガン無視でアクセサ増やすって行為は、
クラス減らした結果アクセサが増えた場合も、
そうでない場合も、どちらでも実行可能じゃない?
0981デフォルトの名無しさん
2013/10/29(火) 03:06:13.29クラス間の依存関係がカオスになりがち。
依存関係を図にプロットするツールに通すと、循環であちこちに円ができてな。
依存ツリーを図にしてるはずなのに、
なぜかインターネットプロバイダの接続図みたいになるんだよ。
0982デフォルトの名無しさん
2013/10/29(火) 03:09:52.07クラス減らし病も
循環依存設計病も
全部が繋がりあってるんだよ
だからどれか一つ治そうとしても無理なんだよ
0983デフォルトの名無しさん
2013/10/29(火) 03:17:05.34こまいクラス全部ご丁寧にファイル分ける人は嫌い
何の本に毒されたのやら
0984デフォルトの名無しさん
2013/10/29(火) 04:56:30.58極論同士で比較してもどっちもダメに決まってるだろ。
PGクラスとSEクラスを分けるか分けないかというレベルの話だ。
0985デフォルトの名無しさん
2013/10/29(火) 05:37:40.38PGはコーディングのみでおk
0986デフォルトの名無しさん
2013/10/29(火) 09:05:11.95http://toro.2ch.net/test/read.cgi/tech/1383005075/
0987デフォルトの名無しさん
2013/10/29(火) 09:20:02.81おつhoge
0988デフォルトの名無しさん
2013/10/29(火) 10:29:07.98COMやりだした頃は、ゲッタセッタになりかけた 嫌々だった
よく考えたら、場合によってはstruct* 返せばいいんだった
0989デフォルトの名無しさん
2013/10/29(火) 10:50:37.660990デフォルトの名無しさん
2013/10/29(火) 18:23:41.00自前でしか使わないクラスにいちいちゲッタセッタは面倒だし、遅いし、無意味。
0991デフォルトの名無しさん
2013/10/29(火) 18:37:31.880992デフォルトの名無しさん
2013/10/29(火) 21:10:43.67おつ
0993デフォルトの名無しさん
2013/10/29(火) 21:52:11.010994デフォルトの名無しさん
2013/10/29(火) 22:01:13.270995デフォルトの名無しさん
2013/10/29(火) 22:09:32.780996デフォルトの名無しさん
2013/10/29(火) 22:14:41.810997デフォルトの名無しさん
2013/10/29(火) 22:49:29.930998デフォルトの名無しさん
2013/10/29(火) 22:51:10.130999デフォルトの名無しさん
2013/10/29(火) 22:55:07.431000デフォルトの名無しさん
2013/10/29(火) 22:55:29.9110011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。