C++相談室 part107
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2013/11/19(火) 08:46:57.10ただし質問の前にはFAQに一通り目を通してください。
IDE (VC++など)などの使い方の質問はその開発環境のスレに
お願いします。
前スレ
C++相談室 part106
http://toro.2ch.net/test/read.cgi/tech/1383005075/
このスレもよろしくね。
【初心者歓迎】C/C++室 Ver.88【環境依存OK】
http://toro.2ch.net/test/read.cgi/tech/1384061494/
次期規格C++1yはこちら
C++14/C++1y
http://toro.2ch.net/test/read.cgi/tech/1382889622/
■長いソースを貼るときはここへ。■
http://codepad.org/
http://ideone.com/
0002デフォルトの名無しさん
2013/11/19(火) 09:25:20.290003デフォルトの名無しさん
2013/11/19(火) 09:29:24.360004デフォルトの名無しさん
2013/11/19(火) 10:24:44.90環境によるだろ。
俺はBorland-C++5.6.2に -D_RTLDLL オプションを指定して、極力
ランタイムを使用するようにして使っているが、例えばstd::vectorを
使っても使わない時と比べ10Kほどしか増えない
すげえ。ダイナミックリンクしといてファイルサイズが増えないとかいってるよ。この人。
C1010: プリコンパイル済みヘッダーの検索中に予期しない EOF を検出しました。
とかいうエラーが出るんだけどこれってどうすればいいの?
#include <stdafx.h>
後死ね。
言葉が悪いな。それで教えているつもりか。
まぁヒントぐらいにはなったな。
うむごくろう。
最近白髪が増えてきたが、そうか禿げるのか‥‥スッポスッポ先生にあやかれるのなら光栄だ
0006重要
2013/11/19(火) 13:16:31.09hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0007デフォルトの名無しさん
2013/11/19(火) 13:18:48.110008デフォルトの名無しさん
2013/11/19(火) 18:07:26.070009デフォルトの名無しさん
2013/11/19(火) 18:22:16.550010デフォルトの名無しさん
2013/11/19(火) 19:13:27.190011デフォルトの名無しさん
2013/11/19(火) 19:20:01.220012デフォルトの名無しさん
2013/11/19(火) 19:29:44.99「ナンダッテー」
0013デフォルトの名無しさん
2013/11/19(火) 19:48:27.040014デフォルトの名無しさん
2013/11/19(火) 20:07:13.830015デフォルトの名無しさん
2013/11/19(火) 20:11:08.290016デフォルトの名無しさん
2013/11/19(火) 21:01:14.180017デフォルトの名無しさん
2013/11/19(火) 21:09:03.57main(){
printf(”konnitiwa!”);
}
なぜかエラーが出て実行できません!!!!!!何でですかね!!!???!?!?
0018デフォルトの名無しさん
2013/11/19(火) 21:10:59.220019デフォルトの名無しさん
2013/11/19(火) 21:11:29.530020デフォルトの名無しさん
2013/11/19(火) 21:12:02.850021デフォルトの名無しさん
2013/11/19(火) 21:17:09.000022デフォルトの名無しさん
2013/11/19(火) 21:23:05.380023デフォルトの名無しさん
2013/11/19(火) 21:33:32.19mfcのSDIで作ってて、一つのメイン画面から20弱くらいのプログラムに遷移するようなやつで、
画面だけSDIで作ってあとは一つ一つdllにしようかと思ってたんだが、
上司がインストールとか再頒布パッケージとか嫌いみたいで、
exeだけコピーしてすぐ使えるようにしたいって言ってんだわ…。
だから.netも論外みたいな感じなんだが、UIは簡単に作りたいからmfc使えみたいな分けのわからない話なんだが
dllに小分けしようにも再頒布無しじゃmfcをスタティックリンクするしかないと思うんだけど、
そうしたらdll一つでメガ単位になるんでなんだかなぁ・・・って感じなんだが
なんかいい方法ないですか?
もういっそ1つのプロジェクトに全部詰め込むしかないかと思ってるんだけど、
ソース多くなると重くなるしメンテもめんどうだし悩んでるんだが、
みんなはどんなふうに開発してんの?
やっぱdllに小分けしてるの?
0024デフォルトの名無しさん
2013/11/19(火) 21:34:00.76> 930 名前:デフォルトの名無しさん[] 投稿日:2013/11/19(火) 00:50:35.25
> staticにする必要ないだろ
> WM_なんちゃらって書いてるって事はメッセージループ周ってるんだろうからループスコープの外に書けばいいだけ。
ループスコープの外っていうとWinMainだと思うけど、そのなかに置いたオブジェクトをウィンドウプロシージャに
どう渡せばいいですか?
Windowsプログラムは全然シロートなんで標準的なやり方があったら教えて。
0025重要
2013/11/19(火) 21:40:36.32hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0026デフォルトの名無しさん
2013/11/19(火) 21:52:41.550027デフォルトの名無しさん
2013/11/19(火) 21:57:58.50プロならWM_hogeと書く
おおかた、グローバル変数で渡せとか言うんだろ
0028重要
2013/11/19(火) 21:58:41.49hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0029デフォルトの名無しさん
2013/11/19(火) 22:01:05.080030デフォルトの名無しさん
2013/11/19(火) 22:01:58.900031デフォルトの名無しさん
2013/11/19(火) 22:05:01.16受験番号を取り出したい。STLでさくっと頼む。
ここんとこC++やってなくてすっかり忘れてもたw
map<>にpush_back()してsort?
0032デフォルトの名無しさん
2013/11/19(火) 22:09:07.080033デフォルトの名無しさん
2013/11/19(火) 22:10:18.780034デフォルトの名無しさん
2013/11/19(火) 22:11:56.740035デフォルトの名無しさん
2013/11/19(火) 22:12:15.460036デフォルトの名無しさん
2013/11/19(火) 22:14:18.520037デフォルトの名無しさん
2013/11/19(火) 22:16:11.52make_pair
sort
0038デフォルトの名無しさん
2013/11/19(火) 22:16:40.870039デフォルトの名無しさん
2013/11/19(火) 22:17:22.33ttp://ideone.com/FHvDd7
0040デフォルトの名無しさん
2013/11/19(火) 22:19:09.96しかし、そのfor文は何w 最近の仕様?
0041デフォルトの名無しさん
2013/11/19(火) 22:19:44.500042デフォルトの名無しさん
2013/11/19(火) 22:21:12.71言わないから。
しかし、emplaceってのも最近? STLに前からあった?
0043デフォルトの名無しさん
2013/11/19(火) 22:23:06.470044デフォルトの名無しさん
2013/11/19(火) 22:35:26.110045デフォルトの名無しさん
2013/11/19(火) 22:43:58.33std::vectorなどのテンプレートクラスを集めたライブラリ。
今はC++の一部になっている
0046デフォルトの名無しさん
2013/11/19(火) 22:46:07.120047デフォルトの名無しさん
2013/11/19(火) 22:48:01.57C++の新しい規格C++11によって言語仕様、ライブラリに多数の追加変更が発生した
このfor文はrange-based forといい、コンテナ全体を走査する事が出来る 内部的にはイテレータをbeginからendまで回している
std::map::emplaceもC++11で追加された関数で、与えられた引数からpairを構築し、コンテナに挿入する
0048デフォルトの名無しさん
2013/11/19(火) 22:58:16.920049デフォルトの名無しさん
2013/11/19(火) 23:00:05.75最適化にも少しは力入ってるのかなぁ。
0050デフォルトの名無しさん
2013/11/19(火) 23:16:26.52そのループがwhile( xxx ) だとして、その直前に書けばいいだけ。
なんでわかんないの?
0051デフォルトの名無しさん
2013/11/20(水) 00:37:39.27>今はC++の一部になっている
どうしてこうも平然と嘘がつけるのか
0052デフォルトの名無しさん
2013/11/20(水) 00:50:14.92ウィンドウプロシージャやそこから呼ぶ関数にどうやってポインタ渡すかって話じゃね?
0053デフォルトの名無しさん
2013/11/20(水) 00:52:01.60STL以外にC++選択する理由ないだろ
0054デフォルトの名無しさん
2013/11/20(水) 01:01:54.71ということだな
0055デフォルトの名無しさん
2013/11/20(水) 01:07:06.48嘘じゃなかんべ、コア言語の規格票に書いてあるんだから
# 私見ながら、ライブラリは別規格とし、コア言語ではあくまで例示にとどめて欲しかった
0056デフォルトの名無しさん
2013/11/20(水) 01:11:11.89「そんなことが規格の何ページに書いてあるのですか?」
↓
0057デフォルトの名無しさん
2013/11/20(水) 01:16:19.91大きなオブジェクトだとコピーしないから違いが大きくなりそうだね
0058デフォルトの名無しさん
2013/11/20(水) 01:42:21.57コピーコンストラクタ一回分省略できそうな気がするけど
RVO/NRVOで結局同じになるんじゃないかとか思うんだがどうなんだこれ
0059デフォルトの名無しさん
2013/11/20(水) 01:55:38.31仕事で使ってる人いる?
0060デフォルトの名無しさん
2013/11/20(水) 02:06:58.760061デフォルトの名無しさん
2013/11/20(水) 02:16:10.98同じく
使うつもりだった C++11 が NG だと、割れ泣き濡れて蟹と戯る・・・て感じ
0062デフォルトの名無しさん
2013/11/20(水) 05:25:31.19使いたくても使えない感じ。あと6年くらいしたら使えるかなぁ…
0063デフォルトの名無しさん
2013/11/20(水) 08:04:48.890064デフォルトの名無しさん
2013/11/20(水) 08:15:47.07そして最後に()を付けてその場で実行したり
0065デフォルトの名無しさん
2013/11/20(水) 08:17:37.11えっそのためだけに構造体を定義してコピーして…?って悩むことが有る
そしてその場でバブルソートを書いちゃうこともある
0066デフォルトの名無しさん
2013/11/20(水) 08:26:13.52理由はemplace_backは右辺値をコンテナに直接追加するけど、
push_backやinsertは一端右辺値を作って、その右辺値をコンテナにコピーしてコピーコンストラクタを発生させるから
0067デフォルトの名無しさん
2013/11/20(水) 09:26:08.28え?
0068デフォルトの名無しさん
2013/11/20(水) 09:39:03.46正 emplace_backは右辺値をコンテナに直接追加できる
0069デフォルトの名無しさん
2013/11/20(水) 10:34:37.16これ位でも差が出るな
ちなみにムーブコンストラクタのコメントを外して有効にするとほとんどemplace()のメリットが無くなるみたい
中でバリバリにmove使ってるな
0070デフォルトの名無しさん
2013/11/20(水) 12:02:11.20おもろいな
0071デフォルトの名無しさん
2013/11/20(水) 12:05:10.76何がおもしろいのか
0072デフォルトの名無しさん
2013/11/20(水) 12:12:28.490073デフォルトの名無しさん
2013/11/20(水) 12:46:07.630074デフォルトの名無しさん
2013/11/20(水) 12:52:54.530075デフォルトの名無しさん
2013/11/20(水) 12:59:20.250076デフォルトの名無しさん
2013/11/20(水) 14:15:59.85これのdist(twister)って何やってんの?
distって変数..じゃない何かなのか
&&とか、色々拡張されちゃってるんだねぇ...
0077デフォルトの名無しさん
2013/11/20(水) 14:17:16.47中で右辺値を追加って、どういう機構ですか?
単にpairのコピーがないから速いのだと理解してましたが.
0078デフォルトの名無しさん
2013/11/20(水) 14:20:55.61https://sites.google.com/site/cpprefjp/reference/random
ここの「分布生成器」って所を参照
元になる乱数がメルセンヌ・ツイスタで生成されていて(他にも何種類か用意されている)
それをどのように分布させて出力するかというアダプタのようなもの
これとchronoとか分かりにくいライブラリがC++11に追加されたけど、一度プログラムを
書いてみれば理解出来るはず
まあライブラリは使わなければC++03と大差ないのでまだいいよな
0079デフォルトの名無しさん
2013/11/20(水) 14:28:54.01C++14/C++1y
http://toro.2ch.net/test/read.cgi/tech/1382889622/
0080デフォルトの名無しさん
2013/11/20(水) 14:42:34.73特にfor分の最初でi初期化出来ないのが一番悲しい
0081デフォルトの名無しさん
2013/11/20(水) 14:46:44.13いや、内容的にはだいたいわかったんだけどdistってclass定義だったのか。
class templateだとか、もっとわかりやすい名前にしてほしいな。
>>80
なんだバリバリのC言語って。
Cなんて今時8bitマイコンくらいにしか用途ないんじゃないか?
0082デフォルトの名無しさん
2013/11/20(水) 14:54:19.620083デフォルトの名無しさん
2013/11/20(水) 14:55:36.95>内容的にはだいたいわかったんだけどdistってclass定義だったのか。
>class templateだとか、もっとわかりやすい名前にしてほしいな。
とりあえず関数オブジェクトでググったぽうがいい。たぶん理解できてない。
0084デフォルトの名無しさん
2013/11/20(水) 14:57:04.470085デフォルトの名無しさん
2013/11/20(水) 15:21:07.42あぁ、そんなのあったな。くらいの理解だわ。
そういう小手先系は理解するまでが面倒なので放置してるわw
0086デフォルトの名無しさん
2013/11/20(水) 15:49:10.19>>77ですが、やはりコピーコンストラクタは呼ばれてますね。
>>69はコピーなしにコンテナに入るから速いのではなく、
コピーが1回分減るから速いという事を確認しました。
コピーそのものは発生してます。
0087デフォルトの名無しさん
2013/11/20(水) 17:19:52.22>原辰徳
お前、歳いくつだよ
0088重要
2013/11/20(水) 17:23:11.13hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0089デフォルトの名無しさん
2013/11/20(水) 17:45:24.180090デフォルトの名無しさん
2013/11/20(水) 17:50:34.43↓ ↓
hage mage
0091デフォルトの名無しさん
2013/11/20(水) 17:51:29.01C99で
0092デフォルトの名無しさん
2013/11/20(水) 17:52:57.980093デフォルトの名無しさん
2013/11/20(水) 17:58:22.76まあCなんて組み込みかOSカーネルくらいだし、C89で十分なんだろうけど
0094デフォルトの名無しさん
2013/11/20(水) 18:06:37.000095デフォルトの名無しさん
2013/11/20(水) 18:08:27.74それはスレ違いだ
0096デフォルトの名無しさん
2013/11/20(水) 18:13:51.34日本語なのでかなで「ほげ」としたいところですが、
これがサンプル中に出てくると非常に紛らわしくなります
int ほげ=10;
extern int はげ(int);
int ひげ=はげ(ほげ);
わかりにくいですね
int hoge=10;
extern int hage(int);
int hige=hage(hoge);
なんとわかりやすいのでしょう。というわけで名付ける必要のない識別子にはhogeをつかいましょう
foo, barなどいういう軟弱なメタ構文変数とちがいhogeシリーズは
hage, hige, huge, hege, hoge
と何も考えずに5種類もつかえます。 hogeを使いましょう
0097デフォルトの名無しさん
2013/11/20(水) 18:19:19.910098デフォルトの名無しさん
2013/11/20(水) 18:20:09.73extern int func1(int);
int var2 = func1(var1);
この方がマシ。他人に説明するのにホゲは不適切。
0099デフォルトの名無しさん
2013/11/20(水) 18:22:08.060100デフォルトの名無しさん
2013/11/20(水) 18:23:58.390101デフォルトの名無しさん
2013/11/20(水) 18:30:21.660102デフォルトの名無しさん
2013/11/20(水) 19:14:50.350103デフォルトの名無しさん
2013/11/20(水) 19:48:42.810104デフォルトの名無しさん
2013/11/20(水) 20:08:48.850105デフォルトの名無しさん
2013/11/20(水) 20:21:56.31「ゲーム開発者のためのAI入門」のサンプルを実行したら
こんなエラーが出て、実行できません
1>リンクしています...
1>LINK : fatal error LNK1104: ファイル '..\..\VC98\Lib\USER32.LIB' を開くことができません。
VC98ってなんですか?ファイル検索しても全く見当たりません
0106デフォルトの名無しさん
2013/11/20(水) 20:26:39.870107デフォルトの名無しさん
2013/11/20(水) 21:03:26.23VC6(1998)のような気がするが何年前の本?
0108デフォルトの名無しさん
2013/11/20(水) 21:06:10.96それぞれ取ってくるテーブルが違う場合、
取ってきた値群の取扱いについてアドバイスをください。
今現在、クラスを一つ作ってその中にそれぞれデータべースから
値を検索してリストで返すメソッドを作ってあります。
それぞれのメソッドには参照渡しで渡して返しているのですが、
この作りだとそもそもクラスにしないで関数でいいじゃないか?と思うんですが、
オブジェクト指向についてまだまだ勉強不足なもので、
みなさんならどういったクラス設計にしますか?
0109デフォルトの名無しさん
2013/11/20(水) 21:11:57.57だってデータベースほど共通化した処理ならsqlのラッパなりなんなり腐るほどあるじゃん
0110デフォルトの名無しさん
2013/11/20(水) 22:08:45.38ちゃんと理解しておいた方がいいYO
なんでかっていうと多くのライブラリ関数等が「3番目の引数に関数オブジェクト(/ファンクタ)を入れてね」
って言ってるからさ。
0111デフォルトの名無しさん
2013/11/20(水) 22:25:07.15sys.title = TRUE;
sys.wait = FALSE;
sys.scene = 1;
main.hで
class System{
public:
bool title;
bool wait;
int scene;
};
extern System sys;
とやってるんですが、main.cppで「定義されていない識別子」エラーが出てしまいます・・・
他のファイルでは同じように書いて問題なく使えているんですがどうしてでしょうか。
0112デフォルトの名無しさん
2013/11/20(水) 22:27:48.14定義書けよ
0113デフォルトの名無しさん
2013/11/20(水) 22:29:34.62がどこにもないからだろ。
しかしbool型に TRUE/FALSE て
0114デフォルトの名無しさん
2013/11/20(水) 22:32:34.31すみませんおかげで解決しました
これに気付かないとか正直ひどすぎましたもうしません
0115デフォルトの名無しさん
2013/11/20(水) 22:42:08.45基底クラスのメンバー変数とかは使われず無駄になることない?
C++はこういうものなの?
0116デフォルトの名無しさん
2013/11/20(水) 22:43:34.96コード貼れ
0117デフォルトの名無しさん
2013/11/20(水) 22:47:47.02-- Amigo.h --
class amigo {
static int count;
public:
///
};
-- Amigo.cpp --
int Amigo::count = 0;
ヘッダにそんなもの書く必要がある場合ってある?
俺には思いつかない。
0118デフォルトの名無しさん
2013/11/20(水) 22:48:35.580119デフォルトの名無しさん
2013/11/20(水) 22:51:25.93そんな設計で基底と矛盾がないように作られてるとは到底思えんし
0120デフォルトの名無しさん
2013/11/20(水) 23:00:45.83StringオブジェクトとかIntegerオブジェクトでsynchronizedする人なんていないから
そういう情報を基底クラスに持ってても使われなくて無駄だよね、とかそういうことじゃない?
0121デフォルトの名無しさん
2013/11/20(水) 23:01:51.63そりゃTRUEというものがどこにも定義されてないからな
0122デフォルトの名無しさん
2013/11/20(水) 23:04:20.56えっ
0123デフォルトの名無しさん
2013/11/20(水) 23:05:05.06Win32API使ってるとたまに遭遇するけど、追加の引数を渡せないコールバック関数をstaticメンバにして
それに何かデータを渡したい場合とか。
0124デフォルトの名無しさん
2013/11/20(水) 23:09:23.250125121
2013/11/20(水) 23:11:03.56え、じゃねーよ。
識別子が定義されてないんだからリンクエラーじゃなくて
コンパイルエラーだろ。
このコードでコンパイルエラーになるところはそこしかない。
0126デフォルトの名無しさん
2013/11/20(水) 23:12:09.65>115は「変数」と申しております。
0127デフォルトの名無しさん
2013/11/20(水) 23:13:08.69>111-114
0128デフォルトの名無しさん
2013/11/20(水) 23:15:18.13いやそうじゃなくて、ヘッダにわざわざ書く必要があるかってこと。
Amigo.cpp に
namespace {
int Amigo_static_count = 0;
}
を置いてそれを使えばいいじゃない。
get, set系をstaticメンバにすればいい。
ヘッダにはたとえprivateでも極力なにも入れたくないし。
0129デフォルトの名無しさん
2013/11/20(水) 23:17:53.49そんなにprivateを書くのが嫌ならインタフェース化しろよ
0130デフォルトの名無しさん
2013/11/20(水) 23:20:49.31基底クラスでちゃんと使われていて、派生クラスで意識しないうちに使われてるだけ、っていうことじゃないの?
本当になにも使われないパターンだってありうるだろうけど。
0131デフォルトの名無しさん
2013/11/20(水) 23:22:47.11privateは設計とは言えないなあ。
実装の詳細であることが多い。
pImplなんか極力その方向に持っていこうとした現れ。
0132デフォルトの名無しさん
2013/11/20(水) 23:27:10.51インターフェースとは何ですか?
規格の何ページに書いてあるのですか?
0133デフォルトの名無しさん
2013/11/20(水) 23:27:23.48クラス設計を間違えてるんだな
0134デフォルトの名無しさん
2013/11/20(水) 23:28:32.04大体の場合は大した問題はないよな
まあ精々 .cpp が複数になった時に便利な程度
0135デフォルトの名無しさん
2013/11/20(水) 23:28:35.84pImplだって本当は何の痕跡も残したくないのだが、何もないわけにはいかないから
しょうがなく不完全型のポインタという形でごまかしてるようなもん。
staticメンバなら本当にヘッダから排除できるからそうするに越したことはない。
0136デフォルトの名無しさん
2013/11/20(水) 23:29:32.68でもそういうケースはゴッドクラス化してる恐れがある
0137デフォルトの名無しさん
2013/11/20(水) 23:32:25.66ヘッダに書いてたって意味ないし
0138デフォルトの名無しさん
2013/11/20(水) 23:38:19.09メンバー関数のポインタの排列とかも作るし
0139デフォルトの名無しさん
2013/11/20(水) 23:40:08.44スタイルのために他の色んなものを犠牲にしてる感じが。
0140デフォルトの名無しさん
2013/11/20(水) 23:40:50.240141デフォルトの名無しさん
2013/11/20(水) 23:43:40.14どうせ年取りゃお前も変わる
0142デフォルトの名無しさん
2013/11/20(水) 23:46:00.53そういう問題じゃないのか
0143デフォルトの名無しさん
2013/11/20(水) 23:49:37.10それヘッダに置かなくてよくね?
ソースに置くならメンバにする必要なくね?
って問題
0144デフォルトの名無しさん
2013/11/20(水) 23:50:13.49いい加減理解しろアホ
0145デフォルトの名無しさん
2013/11/20(水) 23:54:07.69クラスに入れたいときってどういうときなんだよ
入れないと困るパターンを一つでもあげてみろ
0146デフォルトの名無しさん
2013/11/20(水) 23:57:41.72個人的にはprivate static変数って初期化方法からして何だかなって思うけど
0147デフォルトの名無しさん
2013/11/21(木) 00:00:56.640148デフォルトの名無しさん
2013/11/21(木) 00:01:17.31テンプレートクラスのとき、どうするの?
0149デフォルトの名無しさん
2013/11/21(木) 00:02:33.37あるクラスに密接に関連していて
クラス外から見える必要のないものが
クラスに入ってないと気持ち悪いだろ
0150デフォルトの名無しさん
2013/11/21(木) 00:02:36.87具体例挙げていただけると助かる
0151150
2013/11/21(木) 00:03:23.340152デフォルトの名無しさん
2013/11/21(木) 00:08:12.24そんときゃ入れればいいだろ。
原理主義じゃないんだし。
0153デフォルトの名無しさん
2013/11/21(木) 00:11:10.070154デフォルトの名無しさん
2013/11/21(木) 00:13:37.830155デフォルトの名無しさん
2013/11/21(木) 00:15:38.14オレ前にpimplの痕跡を消そうとしていろいろやったけど断念した。
効率よくやるのはムリポ。
0156デフォルトの名無しさん
2013/11/21(木) 00:19:53.78何が目的でそれをやろうとしたの?
0157デフォルトの名無しさん
2013/11/21(木) 00:20:40.01C++11を否定する奴もまた老害だ。
見かけ次第Pから排除しろ。
0158デフォルトの名無しさん
2013/11/21(木) 00:21:34.11あなたの思うゴミじゃないライブラリって何?
0159デフォルトの名無しさん
2013/11/21(木) 00:22:18.8715年くらい前にそんなの有ったね
0160デフォルトの名無しさん
2013/11/21(木) 00:31:04.77って言われたんだが、このクソゆとり野郎って思った私は老害なのでしょうか?
0161デフォルトの名無しさん
2013/11/21(木) 00:31:22.890162デフォルトの名無しさん
2013/11/21(木) 00:34:57.89つまりお前の理論は破綻してんだな
0163デフォルトの名無しさん
2013/11/21(木) 00:35:54.20つまり、そういうことだ。
0164デフォルトの名無しさん
2013/11/21(木) 00:37:26.700165デフォルトの名無しさん
2013/11/21(木) 00:40:17.550166デフォルトの名無しさん
2013/11/21(木) 00:41:43.76class WithoutPimpl {
public:
WithoutPimpl(int p, int l);
int prop() const; //コンストラクタで受け取ったpを返す
int lean() const; //コンストラクタで受け取ったlを返す
};
これをやりたいってこと?
0167デフォルトの名無しさん
2013/11/21(木) 00:44:06.71Standard.....だろ
0168デフォルトの名無しさん
2013/11/21(木) 00:45:12.80そういうもんだ
0169デフォルトの名無しさん
2013/11/21(木) 00:46:44.16全然Standardじゃないんですよねーwww
0170デフォルトの名無しさん
2013/11/21(木) 00:53:31.220171デフォルトの名無しさん
2013/11/21(木) 00:55:15.890172デフォルトの名無しさん
2013/11/21(木) 00:57:05.55抜き出して.hppへ出力してくれれば便利だと思う。なんでそうなってないの?
0173デフォルトの名無しさん
2013/11/21(木) 01:01:55.060174デフォルトの名無しさん
2013/11/21(木) 01:03:07.320175デフォルトの名無しさん
2013/11/21(木) 01:06:11.120176デフォルトの名無しさん
2013/11/21(木) 01:45:27.230177デフォルトの名無しさん
2013/11/21(木) 01:51:50.01テンプレートクラスの場合はヘッダに置くしメンバーにもする。
しかしテンプレートクラスでなければヘッダには置かないしメンバーにもしない。
てことだよな。
なんでそのクラスがテンプレートであるかないかの違いだけで
そこまで大きく流儀を変えなければならないんだ?
0178デフォルトの名無しさん
2013/11/21(木) 03:05:41.140179デフォルトの名無しさん
2013/11/21(木) 03:09:27.36先輩まだ童貞ですよねーwww
0180デフォルトの名無しさん
2013/11/21(木) 03:30:48.940181デフォルトの名無しさん
2013/11/21(木) 06:11:36.18それはpimplだって同じことだよな。
やっぱバッドノウハウなのか?
0182デフォルトの名無しさん
2013/11/21(木) 06:27:36.61メンバ情報を使って計算するってだけならcppの中のフリー関数で間に合うからな。
あとpimplポインタを消そうとしたこともやっぱりあるw
ひとつぐらいそれで動いてるやつあるかもw
0183デフォルトの名無しさん
2013/11/21(木) 07:08:52.990184デフォルトの名無しさん
2013/11/21(木) 07:11:44.14「流儀をそろえる」ことよりも、実務的に「再コンパイルの発生を抑える」ことのほうを優先すれば
そうなるでしょ。
0185デフォルトの名無しさん
2013/11/21(木) 07:18:15.48前者
0186デフォルトの名無しさん
2013/11/21(木) 07:24:28.700187デフォルトの名無しさん
2013/11/21(木) 07:26:13.22privateをpimplまで隠しきるのも嫌
オブジェクトのサイズが増えるんだから再コンパイルの発生は必然で
それを意地でも抑えたいほどコンパイルが激遅いことはもうあまりない
0188デフォルトの名無しさん
2013/11/21(木) 07:31:38.62factory使って実体を作って返したりしてみたわ
0189デフォルトの名無しさん
2013/11/21(木) 07:37:28.410190デフォルトの名無しさん
2013/11/21(木) 07:39:54.79そうすることに何か意味あるの?
0191デフォルトの名無しさん
2013/11/21(木) 07:43:41.830192デフォルトの名無しさん
2013/11/21(木) 07:45:18.24つーかpimplが嬉しいってことは、そのクラスがでかすぎるってことじゃね?
0193デフォルトの名無しさん
2013/11/21(木) 07:49:33.99外のクラス名を偏向せずにpimplの型名だけ変えたい理由ってなに
>>192
> ファイルスコープにローカルなクラスを作ればよくね?
それがpimplじゃいー
0194デフォルトの名無しさん
2013/11/21(木) 07:51:48.73http://stackoverflow.com/questions/825018/pimpl-idiom-vs-pure-virtual-class-interface
0195デフォルトの名無しさん
2013/11/21(木) 07:52:41.56再コンパイルしないでいいってのは副産物
0196デフォルトの名無しさん
2013/11/21(木) 07:55:10.77再コンパイルの発生以外に「許せない」っていう根拠あるの?
0197デフォルトの名無しさん
2013/11/21(木) 08:06:11.770198デフォルトの名無しさん
2013/11/21(木) 08:12:04.47バッドイディオムな響きだな。
0199デフォルトの名無しさん
2013/11/21(木) 08:14:13.02後者の方が筋が良さそうに思えるが、外人的にはどういう結論になってるの?
0200デフォルトの名無しさん
2013/11/21(木) 08:17:06.44C++になってもまだこんなののお世話になるとは思わなかった。
0201デフォルトの名無しさん
2013/11/21(木) 08:24:09.12使い分け派3名
よく理解してない1名
単に解説している1名
pimpl派1名
純粋仮想派2名
ってところ
0202デフォルトの名無しさん
2013/11/21(木) 08:26:17.59up voteが一番多い回答は
C#の「値型」「参照型」みたいな区別をして、「値型」のほうにはpimplを使い、「参照型」には
pure virtual を使う。ただし「値型」のほうはわざわざpimplを使うほどのものでないことが多い。
って感じ。
0203デフォルトの名無しさん
2013/11/21(木) 08:26:55.27なるほど、とりあえずpimpl派には勝ったってことで納得しとこうw
0204デフォルトの名無しさん
2013/11/21(木) 08:28:58.86使い分けしろって書いてるのに勝ったも糞もないわ
0205デフォルトの名無しさん
2013/11/21(木) 08:29:39.71>ただし「値型」のほうはわざわざpimplを使うほどのものでないことが多い。
0206デフォルトの名無しさん
2013/11/21(木) 08:31:43.97pimplの出番無いじゃん。
0207デフォルトの名無しさん
2013/11/21(木) 08:39:07.63そのpimplを使うほどの物ではないものはpure virtualにするか迷うようなものでもない。
使う機会の多さで勝ち負けを決めるんならpure virtualの方が勝ちということでいいけど。
0208デフォルトの名無しさん
2013/11/21(木) 08:42:59.05記法的にかなり異質だし。
0209デフォルトの名無しさん
2013/11/21(木) 09:01:19.45挙動は明確だけど実装方法を隠したいならpimpl
実装方法を隠したいときなんて、
名前空間がグダグダでincludeするだけで他に影響あたえるようなヘッダ(windows.hのmin maxマクロとか!)を使わないとだめだけど、
他に影響させたくないとかぐらいしかない。
そのヘッダを容易に変更できる環境ならばそっちを修正すれば事足りる。
他に使うときはヘッダ類が巨大でコンパイル時間がかかりすぎて困ってるときぐらい。
0210デフォルトの名無しさん
2013/11/21(木) 09:08:21.98HANDLEの類をprivateに置くとしても隠さないな
マルチプラットフォームなプロジェクトならpimplも悪くないか。でもそういうのは
プラットフォーム依存な型のメンバ変数なんて置かないと思う
0211デフォルトの名無しさん
2013/11/21(木) 09:42:37.34クラスの挙動を隠蔽とか、意味が分からんのですけど?
どうやって使うんだよ。
0212デフォルトの名無しさん
2013/11/21(木) 09:46:02.78挙動を隠蔽というのは、何をするのかという仕様を隠蔽することか?
0213デフォルトの名無しさん
2013/11/21(木) 09:47:30.53{
PureVirtual(); // 生成されたインスタンスの状態は秘密です。
virtual ~PureVirtual(); // インスタンスが破棄されるかどうかは秘密です。
virtual void doSomething(int x) = 0; // 挙動および引数の意味は秘密です。
virtual int Something() const = 0; // 返される値の意味は秘密です。
};
0214デフォルトの名無しさん
2013/11/21(木) 09:50:38.710215デフォルトの名無しさん
2013/11/21(木) 09:53:03.420216デフォルトの名無しさん
2013/11/21(木) 09:54:36.88長々と書いておられるようだが、まず、全ての文章が意味不明
0217デフォルトの名無しさん
2013/11/21(木) 10:20:14.67いっとくけど自演じゃないよ?
0218デフォルトの名無しさん
2013/11/21(木) 10:23:02.46身をおいたことが無いなら、再コンパイルを抑えるための実装隠蔽の意義がよくわからないのは
しょうがないかもしれない。
0219デフォルトの名無しさん
2013/11/21(木) 10:35:51.87趣味で作るプログラムでも、1日に2〜3ファイルのペースで増やしていけば、数百ファイルくらい数ヶ月で到達するぞ
0220デフォルトの名無しさん
2013/11/21(木) 10:36:56.73挙動の隠蔽とはどういう意味?
0221デフォルトの名無しさん
2013/11/21(木) 10:39:40.67一体どんだけの規模になるとそうなるの?
0222デフォルトの名無しさん
2013/11/21(木) 10:46:09.05んーと>>209の意図と同じかどうかは知らないが(同じだと思うが)
大雑把な動き(IF仕様)は決まっているが、その動きを実現するための
実際の動作(挙動・・・っていうか実装の詳細)は利用者側に見せない、
というか意識させない、ということだろ
例えば virtual string lookupOwner()=0 の場合に
どこのDBからどう引いてくるのか意識させない、とか
pimplとの使いどころの違いは
pimplは「隠す」とか「実装を切り離す」(リビルド速いとか)とか
いうのが主眼なんだけど
pure virtualの場合は「意図させない」とか「差し替えやすい」とか
いうのが主眼になってる
・・・ってな話じゃないの?
0223デフォルトの名無しさん
2013/11/21(木) 10:46:43.50かつ頻繁に共通ヘッダが書き換えられてフルビルド・ビルド失敗とかあった
マシンパワーとメモリが大幅に増えたからいくらかマシになってるだろうけど
構成からおかしいといくらでもそうなる
0224デフォルトの名無しさん
2013/11/21(木) 10:52:28.24private関数は無くなったり名前が変わったりしても他に影響が及ばない
0225デフォルトの名無しさん
2013/11/21(木) 10:56:28.12それはインターフェースでサブプロジェクト分離してない設計が悪い
pimplよりpure virtualやコンポーネント化すべき部分で
リーダーが馬鹿だとどうしようもないっていう普遍的な教え
0226デフォルトの名無しさん
2013/11/21(木) 11:16:58.88pure virtual の元々の使い道はなんだろうけど、 pure virtual インターフェースクラスで
pimpl と同様に実装の隠蔽ができるんだから委譲関数ベタベタ書かなくていい分そっちの
ほうがいいんじゃね?っていう話をしてたんだよ。
0227デフォルトの名無しさん
2013/11/21(木) 11:18:12.94○pure virtual の元々の使い道はそうなんだろうけど
0228デフォルトの名無しさん
2013/11/21(木) 11:43:53.72代わりに解説ありがとなー
>>226
使い方変わっちゃうし。
std::unique_ptr<scoped_lock> lk=scoped_lock::createInstance();
とか嫌でしょ。
pimplと比べて相対的にクラスを使用する方で使いづらい(実体をそのままほかのクラスのメンバに出来ないとか)、デバッグしづらいを許容できるならいいんじゃない?
0229デフォルトの名無しさん
2013/11/21(木) 12:16:28.7470万ぐらいじゃね
0230デフォルトの名無しさん
2013/11/21(木) 12:29:17.910231デフォルトの名無しさん
2013/11/21(木) 12:58:05.190232デフォルトの名無しさん
2013/11/21(木) 14:09:04.83ああ、そういう流れなのね
で>>194の記事を読んできたけど、pimpleの良いところとして
・バイナリIFが安定してる(pure virtualだと変わることがある) -> shared lib分割時とか
・必要なメモリサイズが小さくてすむ(仮想関数多いときとか特に)
とか出てるね
0233デフォルトの名無しさん
2013/11/21(木) 14:46:14.970234デフォルトの名無しさん
2013/11/21(木) 14:51:26.14継承するクラスの数によるんだっけ? > オブジェクト毎のvtblのサイズ
0235デフォルトの名無しさん
2013/11/21(木) 15:05:29.01DLL内のstd::stringと、アプリのstd::stringの実装が違う場合(つまり、STLの実装が違う場合)、
DLL内のstd::stringから、アプリのstd::stringに代入したら、アプリは吹っ飛ぶのでしょうか?
>std::string sbuf = dll_object.string;
みたいな。
0236デフォルトの名無しさん
2013/11/21(木) 15:07:54.190237デフォルトの名無しさん
2013/11/21(木) 15:20:29.97size_t _size;
size_t _capacity;
T* ptr;
};
class string2 {
T* _begin;
T* _end;
T* _capacity;
};
string1 dllstring;
string2 appstring;
appstring = *reinterpret_cast<string2*>(&dllstring);
こんなことしたら当然吹っ飛ぶよね。アロケータを共有していない場合も吹っ飛ぶ。
0238デフォルトの名無しさん
2013/11/21(木) 15:25:00.590240デフォルトの名無しさん
2013/11/21(木) 16:10:14.13その実装方法は個々の実装で差がある
0241235
2013/11/21(木) 16:16:22.49>std::string sbuf = dll_object.string;
のとき、左右のstd::stringの実装がことなる場合に、
参照カウンタの書き込みで、メモリを壊す可能性はあるのでしょうか?
0242デフォルトの名無しさん
2013/11/21(木) 16:23:28.72どんな理由であれ、データ構造や仕様に差があったらそのデータを同じ物として使えば何らかの不具合になるだろう。
特にstringは確実にポインタを抱えてるから、
どの位置の値がどういう意味のポインタなのかに違いがあれば
大きな不具合になる。
0243デフォルトの名無しさん
2013/11/21(木) 16:30:24.11stringのCopyOnWriteってまだしてる処理系あるの?
スレッドセーフ絡みでもう廃れた実装手法だと思ってるんだが
0244235
2013/11/21(木) 16:52:19.98なるほど、管理情報が不整合で普通に不具合、ということですねorz
>>243
今のSTLに参照カウントは無いかも、ということですねorz
ところで、アロケータというのは、不整合を回避するしくみだったりするのでしょうか?
後、全く関係無い質問ですが、copy on writeのものっていうのは、マルチスレッドで使えない、ということでしょうか?
例えば、QByteArrayは、copy on write、と書いてあったような気がしますが。。。
0245デフォルトの名無しさん
2013/11/21(木) 17:12:45.010246デフォルトの名無しさん
2013/11/21(木) 17:16:22.28http://stackoverflow.com/questions/12199710/legality-of-cow-stdstring-implementation-in-c11
0247デフォルトの名無しさん
2013/11/21(木) 17:22:25.320248235
2013/11/21(木) 17:22:27.20コアな情報をイッパイ知ってしまいました。
>stdstr = qtstr.toStdString(); // だめ
>http://d.hatena.ne.jp/yus_iri/20120328/1332888387
これってやっぱり、STLの異種混合のせいですよね?
でも、参照カウントとか無くなってて、
アロケータ(←理解してませんw)経由で、
今はSTL異種混合でもOK、かも知れないのですね。
知りたいのは、OKかどうかじゃなくて、NGの原因だったりですが。
0249デフォルトの名無しさん
2013/11/21(木) 19:06:39.420250デフォルトの名無しさん
2013/11/21(木) 19:14:00.280251デフォルトの名無しさん
2013/11/21(木) 19:28:47.69・コンテナとイテレーターとアルゴがSTL派
・stringもSTL、ただしiostreamは違う派
・iostreamもテンプレートは全部STL派
・C++ライブラリは全てSTL派
・自分以外の共通モジュール開発担当のライブラリは皆STL派
0252デフォルトの名無しさん
2013/11/21(木) 19:40:47.870253デフォルトの名無しさん
2013/11/21(木) 19:45:33.30他は合理的な説明がつかない
0254デフォルトの名無しさん
2013/11/21(木) 20:04:08.630255デフォルトの名無しさん
2013/11/21(木) 20:07:34.450256デフォルトの名無しさん
2013/11/21(木) 21:17:49.080257デフォルトの名無しさん
2013/11/21(木) 21:21:38.810258デフォルトの名無しさん
2013/11/21(木) 21:36:28.680259デフォルトの名無しさん
2013/11/21(木) 21:39:38.550260デフォルトの名無しさん
2013/11/21(木) 22:29:38.17日本語がたいして出来ない底辺がマになるのに
0261デフォルトの名無しさん
2013/11/21(木) 22:59:35.500262重要
2013/11/21(木) 22:59:55.68hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0263デフォルトの名無しさん
2013/11/21(木) 23:04:33.280264デフォルトの名無しさん
2013/11/21(木) 23:34:58.190265デフォルトの名無しさん
2013/11/21(木) 23:42:08.53お前一人で頑張ったって、世界は変わらんよ
0266デフォルトの名無しさん
2013/11/21(木) 23:52:01.94その人は独習C++をすすめているようですけど、C++11に対応しているのでしょうか?
0267デフォルトの名無しさん
2013/11/22(金) 00:04:52.12オレC++に10年以上ブランクがあってリハビリ中なんだけど、本で何とかなるとは思ってないな。
0268デフォルトの名無しさん
2013/11/22(金) 00:07:00.000269デフォルトの名無しさん
2013/11/22(金) 00:18:45.630270デフォルトの名無しさん
2013/11/22(金) 00:44:16.66独習とか頭湧いてんのかそいつ
ただ、ポケットリファレンスは初学者向きではないね
0271デフォルトの名無しさん
2013/11/22(金) 00:59:29.52これぐらい読みこなせないとC++なんてやっても駄目って感じじゃないか
0272デフォルトの名無しさん
2013/11/22(金) 01:02:40.64会社じゃ未だにC++03が使われる事が多いから、
今無理してC++11覚えても
あれも使えないこれも使えないって苛つくだけだろ
0273デフォルトの名無しさん
2013/11/22(金) 01:08:02.560274デフォルトの名無しさん
2013/11/22(金) 01:10:43.59優秀な奴はそんなうんこ会社にはいかないよ
0275デフォルトの名無しさん
2013/11/22(金) 01:16:13.80C++11はそれほど深くは語られてなかった
所詮みんなが求めてるC++11って浅いところだけなんだなと思った
0276デフォルトの名無しさん
2013/11/22(金) 01:27:29.590277デフォルトの名無しさん
2013/11/22(金) 01:41:27.870278デフォルトの名無しさん
2013/11/22(金) 01:44:40.36どれでも好きな本を読めば良い
その人が何を考えているのかは分からないが、
ロベールは中でもいい選択肢だと思う
C++11を知りたければ、その上でポケットリファレンスを読めば良い
0279デフォルトの名無しさん
2013/11/22(金) 07:22:00.69気にしないことにします
0280デフォルトの名無しさん
2013/11/22(金) 07:55:43.27英語読めない人は寄付募ってた人のアレ読んで足りないとこはググれw
0281デフォルトの名無しさん
2013/11/22(金) 08:12:51.71200ページないみたいだし、米Amazonでの評価も悪くない
0282235
2013/11/22(金) 08:54:40.70>アロケー
上記の関係教えて下さいorz
0283デフォルトの名無しさん
2013/11/22(金) 09:37:20.450284デフォルトの名無しさん
2013/11/22(金) 09:41:01.030285デフォルトの名無しさん
2013/11/22(金) 11:01:14.52バカにしてるくせに人に勧めるってどういう
0286デフォルトの名無しさん
2013/11/22(金) 11:03:21.72this!
0287デフォルトの名無しさん
2013/11/22(金) 17:08:52.95その人クラスに年齢や身長などのメンバ変数を作る
この人クラスを派生させいろいろな職業の人を作っていった場合
基底クラスのメンバ変数は使わないから無駄にならない?
C++ってこういうもの?
0288デフォルトの名無しさん
2013/11/22(金) 17:14:14.70この人クラスを派生させいろいろな職業の人を作っていって
必要になった時にその人クラスに年齢や身長などのメンバ変数を追加すればいいんじゃないの
0289デフォルトの名無しさん
2013/11/22(金) 17:15:00.91C++以前の問題だろそれ
0290デフォルトの名無しさん
2013/11/22(金) 17:18:53.25継承したメンバがいらないのに、なぜ派生させるんだ?
0291デフォルトの名無しさん
2013/11/22(金) 17:22:49.68年齢や身長などの基底の属性がすべて存在する場合だけ派生させる
0292デフォルトの名無しさん
2013/11/22(金) 17:48:24.67派生の目的として再利用、拡張性、概念の整理がある以上
使用されない変数や実行されない関数があっても
何ら問題ではない
0293デフォルトの名無しさん
2013/11/22(金) 17:56:51.24何しちゃいかんって法律があるわけじゃないしね
最高級のスパゲッティを作る可能性はあるが。
0294デフォルトの名無しさん
2013/11/22(金) 17:57:42.000295デフォルトの名無しさん
2013/11/22(金) 18:14:37.35複数の職業を持つ場合に備えてリストにしておくとか。
0296デフォルトの名無しさん
2013/11/22(金) 18:17:17.080297デフォルトの名無しさん
2013/11/22(金) 18:27:49.99無職になった時のクラスチェンジとか僧侶になりたいときとか楽だから。
0298デフォルトの名無しさん
2013/11/22(金) 18:30:28.14冷たいコーヒー買ってしまった。
やてもた。
0299デフォルトの名無しさん
2013/11/22(金) 18:31:01.570300デフォルトの名無しさん
2013/11/22(金) 18:32:22.43ハンターの100倍強い。
0301デフォルトの名無しさん
2013/11/22(金) 18:53:57.99C++の問題であるかのように言ってることから想像するに、
インターフェイスのようなのが欲しいってことかな?
それなら抽象基底クラスってのがC++にはあるけど。
0302デフォルトの名無しさん
2013/11/22(金) 20:26:22.64基底クラスのデータは使わないのが普通なの?
0303デフォルトの名無しさん
2013/11/22(金) 20:55:03.68void acceptSomeOne(人& hito);
という関数があるとする。
実行時には hito のところに僧侶や予備校講師が飛び込んでくるんだ。
acceptSomeOneちゃんはそれで満足するか?
そういうソフトウェアだったら問題ない。
0304デフォルトの名無しさん
2013/11/22(金) 21:10:41.53いくら派生クラスから直接使わなくても、
基底クラスのインターフェース通して使われるわけだが。
0305デフォルトの名無しさん
2013/11/22(金) 22:20:36.22いろいろな職業の人を作ったら無駄になるってところがわからないんだが。
職業ごとに年齢や身長を調べたい場合には使うだろ。
0306デフォルトの名無しさん
2013/11/22(金) 23:08:03.85例え話だからって言われたらそりゃそうなんだけど、実際だとモノフィックなデータクラスとして書かない?
どうせDBからデータ読み込むんだろうし、ポリモーフィックなクラスの例として適切なのか?ってよく思う。
0307デフォルトの名無しさん
2013/11/22(金) 23:40:11.35>>303の言うように、人を参照してる関数とかが僧侶や予備校講師を受け取って
何か意義のあることが できるんだったら適切
0308デフォルトの名無しさん
2013/11/23(土) 08:48:12.69インターフェイスと大まかな仕様だけ渡して3Dで表示、操作できれば本採用
0309デフォルトの名無しさん
2013/11/23(土) 09:58:14.11モデル化やオブジェクト指向の例としては、車の方が適切だと思うんだけど、現実にソフトとして作る可能性が高いのは、人間に関するデータ処理の方だったりするよね。
0310デフォルトの名無しさん
2013/11/23(土) 10:09:40.860311デフォルトの名無しさん
2013/11/23(土) 10:20:06.80そのあたりで、なんかすれ違ってないか?
0312デフォルトの名無しさん
2013/11/23(土) 10:30:42.35別に議論しているわけではなくて、各々思うところを述べているだけに見えるけどなあ
0313デフォルトの名無しさん
2013/11/23(土) 11:11:20.090314重要
2013/11/23(土) 12:01:56.43hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0315デフォルトの名無しさん
2013/11/23(土) 12:06:56.770316デフォルトの名無しさん
2013/11/23(土) 12:20:20.28人クラスそれ自体、分野で扱うものが違う。
ここで議論する話じゃない。
0317デフォルトの名無しさん
2013/11/23(土) 12:48:05.65日本語なのでかなで「ほげ」としたいところですが、
これがサンプル中に出てくると非常に紛らわしくなります
int ほげ=10;
extern int はげ(int);
int ひげ=はげ(ほげ);
わかりにくいですね
int hoge=10;
extern int hage(int);
int hige=hage(hoge);
なんとわかりやすいのでしょう。というわけで名付ける必要のない識別子にはhogeをつかいましょう
foo, barなどいういう軟弱なメタ構文変数とちがいhogeシリーズは
hage, hige, huge, hege, hoge
と何も考えずに5種類もつかえます。 hogeを使いましょう
0318デフォルトの名無しさん
2013/11/23(土) 13:56:56.510319デフォルトの名無しさん
2013/11/23(土) 17:40:07.26なんか,hage先生からhageってしたかったけど
さすがにこれじゃひどいからって、一文字変えてhogeにしたって感じだな
0320デフォルトの名無しさん
2013/11/23(土) 17:59:38.12その時々でダブルディスパッチ実装で良くね?
0321デフォルトの名無しさん
2013/11/23(土) 19:36:46.77昔は、作ってて問題があると専門書を引っ張り出してきて探しまくってたけど今は殆どの問題は「ネットで検索」で解決出来るもんね。
結構面倒?難しい?問題だと、海外サイトじゃないとヒットしないのが玉にキズだけど。
0322デフォルトの名無しさん
2013/11/23(土) 20:05:17.63昔の人は選択肢少ない分だけ楽だよ
羨ましいね簡単そうでさ
0323デフォルトの名無しさん
2013/11/23(土) 20:12:40.03電子書籍が統一フォーマットになって電子書棚全体に対して全文検索できるようになったら
書籍の復権もあると思うんだけどな。
0324デフォルトの名無しさん
2013/11/23(土) 20:15:19.34全部が無理ならC++関連のみとか、JavaScriptのみとか、カテゴリ分けしてもいいから・・・・・・
0325デフォルトの名無しさん
2013/11/23(土) 20:50:07.30眈々と必要な情報を体型的に並べてくれりゃいいのに
0326デフォルトの名無しさん
2013/11/23(土) 20:52:00.550327デフォルトの名無しさん
2013/11/23(土) 21:27:39.860328デフォルトの名無しさん
2013/11/23(土) 21:40:50.550329デフォルトの名無しさん
2013/11/23(土) 21:45:45.300330デフォルトの名無しさん
2013/11/23(土) 21:57:06.33月1000円は書籍代というより有料情報の横断検索代と思えば別に高くない。
0331デフォルトの名無しさん
2013/11/23(土) 22:09:45.36専門書すらたいして買ってもらえない底辺企業・学校にいるから自腹なのか
0332デフォルトの名無しさん
2013/11/23(土) 22:32:24.86ソフトウェアなんて今や社会のあらゆる場所で使われてるんだからさ。
ユーザー企業にだって規模が小さいだけで本格的なプログラムを作っている人間はいくらだっている。
0333デフォルトの名無しさん
2013/11/23(土) 22:40:54.92プログラムを作っている奴がいるならユーザー企業でも買ってもらえるだろ
ユーザー企業で本格的なプログラムを作っている奴は開発ツールも自腹なのか
0334デフォルトの名無しさん
2013/11/23(土) 22:43:22.13Safari Books Onlineは40ドルくらいだから試してみたら
0335デフォルトの名無しさん
2013/11/23(土) 22:53:49.31って思ったけど大学生なんてC++入門書一冊あれば充分だな
0336デフォルトの名無しさん
2013/11/23(土) 22:54:41.31月額1千円のサービスってのは、エバーノートの全文検索機能便利→自分でスクラップしなくても
どこかの誰かが優良な情報のみを選りすぐって全文検索サービスを提供してくれたら有料でも
利用するのに→オライリーの電子書籍に全文検索エンジンを組み合わせれば直ぐにできそうじゃね?
って思っただけなんだけどねw
0337デフォルトの名無しさん
2013/11/23(土) 22:56:16.640338デフォルトの名無しさん
2013/11/23(土) 22:57:36.500339デフォルトの名無しさん
2013/11/23(土) 23:06:20.16紙の書籍では検索できないし、一度は通読して大体でも何がどの本のどの辺りに書かれてるか
把握しておかないと役に立たないとまでは言わないまでも、少なくとも効率的には利用できない。
グーグル便利すぎ!に対抗するには、電子書籍化+書籍境界を越えての全文検索機能は
必須だと思う。
0340デフォルトの名無しさん
2013/11/23(土) 23:22:29.50開発ツールはまとめて購入するだろうが書籍は認められにくいだろうね。
0341デフォルトの名無しさん
2013/11/23(土) 23:31:12.86紙で読み放題っていうのは殆ど聞いたことない
0342デフォルトの名無しさん
2013/11/23(土) 23:32:06.44そんなんあるんだ。
0343デフォルトの名無しさん
2013/11/23(土) 23:38:12.54そんなのあるのか、知らんかった。
だったらもう既に全文検索エンジンと組み合わせて独自のオライリー本検索システムとか
作ってる会社もありそう。羨ましいぞ
0344デフォルトの名無しさん
2013/11/24(日) 02:37:21.890345デフォルトの名無しさん
2013/11/24(日) 08:02:51.70用意したとき、それらを同じヘッダに入れる?
たまにカスタム化した実装クラスをつかうかもしれないけど、
ほとんどの場合はそのデフォルト実装クラスを使う、という前提で。
あと、そのためのfactoryクラスはどうしてる?
0346デフォルトの名無しさん
2013/11/24(日) 09:20:04.65大学図書室とか所属研究室で頼めば買ってくれるしょや?
0347デフォルトの名無しさん
2013/11/24(日) 09:50:18.210348デフォルトの名無しさん
2013/11/24(日) 10:01:03.60クラスでの需要ないから
0349デフォルトの名無しさん
2013/11/24(日) 10:02:16.51==(classType, primitiveType)ならばクラスにこだわる必要ないし
0350デフォルトの名無しさん
2013/11/24(日) 10:32:02.48同じヘッダに入れてもファイル数を減らすだけの効果しかないだろ。
0351デフォルトの名無しさん
2013/11/24(日) 10:50:37.70その前提だったら同じヘッダに入れる。
factoryもインタフェースだけ入れる。
0352デフォルトの名無しさん
2013/11/24(日) 11:31:57.57ああ、確かに欲しいかも。
0353デフォルトの名無しさん
2013/11/24(日) 11:47:19.140354デフォルトの名無しさん
2013/11/24(日) 12:03:17.33別におかしな発想ではない
今さら互換性で無理なんだろうけど
0355デフォルトの名無しさん
2013/11/24(日) 12:37:26.75JavaScriptのような仕様は使いにくい
0356デフォルトの名無しさん
2013/11/24(日) 12:43:34.23JavaScriptのswitchはジャンプテーブルでないので、
C++でそれをやると2つの意味をもつ事になって使いにくくなる
0357デフォルトの名無しさん
2013/11/24(日) 12:46:00.070358デフォルトの名無しさん
2013/11/24(日) 12:58:49.820359デフォルトの名無しさん
2013/11/24(日) 13:21:15.950360デフォルトの名無しさん
2013/11/24(日) 13:29:12.77昔は連発してたけど
0361デフォルトの名無しさん
2013/11/24(日) 13:42:01.450362デフォルトの名無しさん
2013/11/24(日) 14:33:26.000363デフォルトの名無しさん
2013/11/24(日) 14:34:31.380364デフォルトの名無しさん
2013/11/24(日) 15:45:24.400365デフォルトの名無しさん
2013/11/24(日) 15:49:12.610366デフォルトの名無しさん
2013/11/24(日) 15:49:55.190367デフォルトの名無しさん
2013/11/24(日) 15:51:46.81switch文に限らず、enumの条件網羅をコンパイル時に保証できるようにしたいんだ。
0368デフォルトの名無しさん
2013/11/24(日) 15:54:56.78これでいいだろ。
do {
if(・・・) { ・・・ break; }
if(・・・) { ・・・ break; }
if(・・・) { ・・・ break; }
} while(0);
0369デフォルトの名無しさん
2013/11/24(日) 16:08:26.91-Wallにすれば警告が出る。エラーにしたければ-Werror。
って、普通こんなのデフォ設定だろ。
>>367
ifで網羅チェックとかアホか。
>>368
switch文は定数だからオプティマイズが効くわけだが。
0370デフォルトの名無しさん
2013/11/24(日) 16:11:36.26それがないswitchなんて意味がない
最初からハッシュテーブルに詰めろ
0371デフォルトの名無しさん
2013/11/24(日) 16:14:26.35オートフォーマットと相性悪いし1行に複数文は置きたくない
そしてbreak使いたい(そしてgotoを避けたい)がためのこのdo/whileの使い方嫌いだ
0372デフォルトの名無しさん
2013/11/24(日) 16:15:49.98アフォ >>366はどう読んでも
enum { hage, hige, huge, hege, hoge};
switch(hogehoge) {
case hage:
case hige:
case huge:
case hege:
default:
}
でチェックしたいという事だろ お前の読解力の無さにはびっくりだよ
0373デフォルトの名無しさん
2013/11/24(日) 16:19:04.75こっちがびっくりだよ。
マジならこんなレベルのやつとは関わりたくないもんだわ。
0374デフォルトの名無しさん
2013/11/24(日) 16:19:43.31FacebookはPHPから移行してる。新規はD言語とかも
0376デフォルトの名無しさん
2013/11/24(日) 16:35:43.79型のパターンマッチだけならあるんだけどなあ
網羅は無理そう
0377デフォルトの名無しさん
2013/11/24(日) 16:42:36.950378デフォルトの名無しさん
2013/11/24(日) 17:02:10.120379デフォルトの名無しさん
2013/11/24(日) 17:04:10.47同じ値使ったらコンパイラがエラー出すわ。
0380デフォルトの名無しさん
2013/11/24(日) 17:05:31.430381デフォルトの名無しさん
2013/11/24(日) 17:09:58.720382デフォルトの名無しさん
2013/11/24(日) 17:16:31.390383デフォルトの名無しさん
2013/11/24(日) 17:17:27.390384デフォルトの名無しさん
2013/11/24(日) 17:17:39.690385デフォルトの名無しさん
2013/11/24(日) 17:18:09.110386デフォルトの名無しさん
2013/11/24(日) 17:18:43.380387デフォルトの名無しさん
2013/11/24(日) 17:28:43.460388デフォルトの名無しさん
2013/11/24(日) 17:35:31.33まぁほとんど無意味なことも多いが何%かは本当のバグのこともある。
0389デフォルトの名無しさん
2013/11/24(日) 17:38:27.59最近知って舞い上がってる新人君か?
0390デフォルトの名無しさん
2013/11/24(日) 17:50:18.600391デフォルトの名無しさん
2013/11/24(日) 17:55:47.240392デフォルトの名無しさん
2013/11/24(日) 17:57:39.26QACのレポート何万件か潰したけど無料でもっと品質いいレポート出してくれる
なら使ってみるわ。
0393デフォルトの名無しさん
2013/11/24(日) 18:03:27.79まあ気になるなら使ってみ
0394デフォルトの名無しさん
2013/11/24(日) 18:18:05.61ライブラリーは関係ないだろ。
まあ、言ってることには同意する。
>>392
Sonar って、CodeSonar のことか?
なら、QAC++ の代替えは無理。
同じ静的解析だけど、方向性が違う。
0395デフォルトの名無しさん
2013/11/24(日) 18:28:51.930396デフォルトの名無しさん
2013/11/24(日) 18:41:17.50gcc なら -Wswitch-enum もある
0397デフォルトの名無しさん
2013/11/24(日) 18:42:46.200398デフォルトの名無しさん
2013/11/24(日) 19:12:52.41やっぱQACのがメジャーだわな
0399デフォルトの名無しさん
2013/11/24(日) 20:26:17.10誰もそんなことは言ってない。
>>366 程度ならオプションで済むと言ってるだけ。
QAC 出してきた奴は、 最近知って舞い上がってる新人君。
つか、そんな理解力だとマに向いてないぞ (w
0400デフォルトの名無しさん
2013/11/24(日) 20:27:53.480401デフォルトの名無しさん
2013/11/24(日) 21:59:58.98新人君乙 (w
0402デフォルトの名無しさん
2013/11/24(日) 22:47:41.34codeSonerの方がよいですか?
0403デフォルトの名無しさん
2013/11/24(日) 23:08:21.820404デフォルトの名無しさん
2013/11/25(月) 07:57:37.88Gimpel1C-lint は初めて聞いたのでよくわからんが、取り敢えず営業に電話して CodeSonar 試させてもらえばいいと思うよ。
0405デフォルトの名無しさん
2013/11/25(月) 10:03:16.200406デフォルトの名無しさん
2013/11/25(月) 11:01:47.37-Wswitch と -Wswitch-enum は別だよ
0407デフォルトの名無しさん
2013/11/25(月) 11:17:12.450408デフォルトの名無しさん
2013/11/25(月) 11:18:46.110409デフォルトの名無しさん
2013/11/25(月) 11:20:11.72すまそ。文字化けしている
http://www.gimpel.com/html/pcl.htm
0410288
2013/11/25(月) 14:25:40.32ソースをキレイにするために
基底クラスのメンバー変数や関数は使わなくてもOKってことで良い?
0411デフォルトの名無しさん
2013/11/25(月) 19:29:48.16お前ら見たいな超すごいのが気合を入れ開発しているから当然か
GCC・LLVM・Clang・VS・Javaとかなんかも実質は日本人が開発って言われているし
0412デフォルトの名無しさん
2013/11/25(月) 19:33:17.400413デフォルトの名無しさん
2013/11/25(月) 19:34:22.75チョンは消えろ
0414デフォルトの名無しさん
2013/11/25(月) 19:46:42.58ソースは?
0415デフォルトの名無しさん
2013/11/25(月) 19:47:00.570416デフォルトの名無しさん
2013/11/25(月) 21:11:29.340417デフォルトの名無しさん
2013/11/25(月) 21:24:27.79わざわざありがとう。
ところでこれって、日本代理店あるの?
直接購入?
0418デフォルトの名無しさん
2013/11/25(月) 21:36:56.22昔4oftech とかサザンパシフィックが扱っていた
バージョンアップは直接やりとりしています。
0419デフォルトの名無しさん
2013/11/25(月) 22:17:49.36なるほど、うちだと適当な商社通して買うことになるかな。
使い勝手とか、検出能力とかはどう?
ちなみにうちは、PG-Relief がメイン。
0420デフォルトの名無しさん
2013/11/26(火) 00:51:05.530421デフォルトの名無しさん
2013/11/26(火) 01:14:15.39オプソ系の貢献は日本企業が強力サポートしている関係で
日本がかなりの割合占めていると言われている
0422デフォルトの名無しさん
2013/11/26(火) 01:18:55.890423デフォルトの名無しさん
2013/11/26(火) 08:08:30.890424288
2013/11/26(火) 13:31:06.93ソースをキレイにするために
基底クラスのメンバー変数や関数は使わなくてもOKってことで良い?
0425デフォルトの名無しさん
2013/11/26(火) 13:38:41.890426デフォルトの名無しさん
2013/11/26(火) 16:27:21.990427デフォルトの名無しさん
2013/11/26(火) 17:04:07.770428デフォルトの名無しさん
2013/11/26(火) 17:09:37.460429デフォルトの名無しさん
2013/11/26(火) 18:05:38.770430デフォルトの名無しさん
2013/11/26(火) 18:11:28.03逆に駄目だというならその理由を示すべき。
A「再利用、拡張性、概念の整理を優先させたために
未使用の変数が存在しています。
何か文句はありますか?」
B「それはダメ」
A「根拠は?必然性は?」
B「…」
0431デフォルトの名無しさん
2013/11/26(火) 18:58:25.880432デフォルトの名無しさん
2013/11/26(火) 19:00:58.50必要となったときに必要なだけの状態であればいいのでは。
0433デフォルトの名無しさん
2013/11/26(火) 19:02:11.470434デフォルトの名無しさん
2013/11/26(火) 19:37:50.540435デフォルトの名無しさん
2013/11/26(火) 19:42:29.240436デフォルトの名無しさん
2013/11/26(火) 20:01:21.40アプリ用だったら、使わないのに実装すると、テストから漏れて、後々に引き継いだ奴が
既存実装を使おうとしてこけるとか。
0437デフォルトの名無しさん
2013/11/26(火) 21:13:17.41100*100で10行テキストが入るCScrollViewに、
onDrawで
int x = 0, y = 0;
for (int i = 0; i < 15; i++) {
CDC.TextOut("xxx", x, y);
y += 10;
}
として画面外まで描画した後、
SetScrollSizesで100*150とセットしてスクロールさせるようにしているのですが、
これだと当然ですが画面全体がスクロールしてしまいます。
上3行固定で下の7行をスクロールしたいんですが、(Excelのウィンドウの固定のような感じ)
どうしたらいいんでしょうか?
0438デフォルトの名無しさん
2013/11/26(火) 21:17:01.440439デフォルトの名無しさん
2013/11/26(火) 22:24:12.10全てを詰め込んだ巨大クラスを作り出すタイプ
0440デフォルトの名無しさん
2013/11/26(火) 22:38:59.84スクロールバーコントロール
0441デフォルトの名無しさん
2013/11/27(水) 07:26:55.27スレチに反応するなボケ
0442デフォルトの名無しさん
2013/11/27(水) 20:16:59.90C/C++スレがhoge禁止になって機能しなくなって
C++ってことで仕方なくこのスレなんだろ。
apiに続いてC/C++スレまで基地外が原因で機能しないからな。
そして、hoge基地の次のターゲットはここだろな
0443デフォルトの名無しさん
2013/11/27(水) 20:40:10.450444デフォルトの名無しさん
2013/11/27(水) 20:53:49.53hogeキチガイは頭がおかしいにも程がある
0445デフォルトの名無しさん
2013/11/28(木) 01:05:23.34最近は「hoge禁止」がスレ住人の総意であるかのように見せる工作を繰り返しているようです。
あまり気にしないでやってください。
0446デフォルトの名無しさん
2013/11/28(木) 01:07:25.930447デフォルトの名無しさん
2013/11/28(木) 01:16:24.240448デフォルトの名無しさん
2013/11/28(木) 07:12:42.320449デフォルトの名無しさん
2013/11/28(木) 07:20:03.680450デフォルトの名無しさん
2013/11/28(木) 21:37:57.560451デフォルトの名無しさん
2013/11/29(金) 13:17:36.07委譲をした元のクラスを解放すれば解放される?
newで生成してるからdeleteしなきゃダメ?
0452デフォルトの名無しさん
2013/11/29(金) 13:21:48.640453デフォルトの名無しさん
2013/11/29(金) 15:15:40.380454デフォルトの名無しさん
2013/11/29(金) 17:25:19.28const a = atoi(argv[1]);
int b[a];
これだと「定数式が必要です」というエラーになります
どうしたらいいでしょうか
0455デフォルトの名無しさん
2013/11/29(金) 17:27:21.330456デフォルトの名無しさん
2013/11/29(金) 17:27:31.710457デフォルトの名無しさん
2013/11/29(金) 17:30:06.52C++はC言語と違って配列のサイズはコンパイル時に決まってないと無理
実行時にサイズが決まる場合はmalloc以外の解決法はない
>>455
vectorは配列ではない
0458デフォルトの名無しさん
2013/11/29(金) 17:31:49.40実行時にサイズが決まる場合はmalloc以外の解決法はない
実行時にサイズが決まる場合はmalloc以外の解決法はない
0459デフォルトの名無しさん
2013/11/29(金) 17:36:06.010460デフォルトの名無しさん
2013/11/29(金) 17:37:08.31えっ?
Cって実行時に配列のサイズ決められるの?
0461デフォルトの名無しさん
2013/11/29(金) 17:38:22.750462デフォルトの名無しさん
2013/11/29(金) 17:39:50.340463デフォルトの名無しさん
2013/11/29(金) 17:48:06.630464デフォルトの名無しさん
2013/11/29(金) 18:01:49.110465デフォルトの名無しさん
2013/11/29(金) 18:11:42.83この <int[]> を型推論させる記法というか仕様ってあるんかな
0466デフォルトの名無しさん
2013/11/29(金) 18:50:17.11むしろ初心者にこそ、後片付けの大切さを知ってもらうため、newしてもらうって
のもあるけどね
あと互換性無くなるけど、gcc拡張なら、動的に配列使うこと出来た気がする
0467デフォルトの名無しさん
2013/11/29(金) 18:56:21.96何を言うとる
何もわからないまま、俺C++得意だぜwwwwで終わり
そして初心者にきちんと物事を教える大切さを周りの人間が知る
0468デフォルトの名無しさん
2013/11/29(金) 19:25:07.30vector b;
b.resize(atoi(argv[1]));
0469デフォルトの名無しさん
2013/11/29(金) 19:27:34.790470デフォルトの名無しさん
2013/11/29(金) 19:29:18.910471デフォルトの名無しさん
2013/11/29(金) 19:30:08.62457 vectorは配列ではない
468 vector b; b.resize(atoi(argv[1]));
>>457と>>468はコミュ障の嫌いがある
0472デフォルトの名無しさん
2013/11/29(金) 19:30:52.490473デフォルトの名無しさん
2013/11/29(金) 19:33:17.860474デフォルトの名無しさん
2013/11/29(金) 19:33:55.860475デフォルトの名無しさん
2013/11/29(金) 19:54:28.75自分でメモリ管理なんて出来ないよ。だからスマポ、Vector
0476デフォルトの名無しさん
2013/11/29(金) 20:00:57.39「可変長配列なにこれ便利www」つって何MBもスタックに置き始める馬鹿がでてくるから固定でいい
0477デフォルトの名無しさん
2013/11/29(金) 20:08:53.480478デフォルトの名無しさん
2013/11/29(金) 20:16:53.65サイズの問題じゃなかろうが
そう思い込んでるなら、おまえこそ深刻な問題を抱えているぞ
0479デフォルトの名無しさん
2013/11/29(金) 20:22:28.05何MBもスタックは固定長でもやるだろ。C++はそんなアホな奴でも配列使えるようにvectorを用意
C++はCをたいして使えないアホでも使えるようにしたやさしさ満点のCの拡張言語
0480デフォルトの名無しさん
2013/11/29(金) 20:27:35.32実行前にチェックできるかどうかは天と地ほどの差があるわ
0481デフォルトの名無しさん
2013/11/29(金) 20:28:35.340482デフォルトの名無しさん
2013/11/29(金) 20:29:34.590483デフォルトの名無しさん
2013/11/29(金) 20:34:11.81b.resize(atoi(argv[1]));
b[0]=12345;
実際にはresizeなんてまず使わない≒事前にサイズを知る必要がまずない。
vector<int> b;
b.push_back(12345);
0484デフォルトの名無しさん
2013/11/29(金) 20:34:24.68スタックもヒープも使わん
0485デフォルトの名無しさん
2013/11/29(金) 20:35:29.320486デフォルトの名無しさん
2013/11/29(金) 20:38:05.510487デフォルトの名無しさん
2013/11/29(金) 20:39:39.58C99も勉強しとけ
0488デフォルトの名無しさん
2013/11/29(金) 20:40:55.13C言語も同じだ。
>実行時にサイズが決まる場合はmalloc以外の解決法はない
vectorあるし、他にもいろいろコンテナあるし、newもある。
>vectorは配列ではない
可変長配列だ。
>「可変長配列なにこれ便利www」つって何MBもスタックに置き始める馬鹿がでてくるから固定でいい
vectorは何メガデータを入れようとも管理領域の数バイトしかスタックを消費しない。
約1名C++ができない知ったか野郎が混ざっているようだね…。
0489デフォルトの名無しさん
2013/11/29(金) 20:42:00.61アセンブラ原理主義のおっさんの幻影を見た
0490デフォルトの名無しさん
2013/11/29(金) 20:43:04.50reserveは管理領域を事前に予約するだけで、
配列のサイズは変わらないんだよ。
0491デフォルトの名無しさん
2013/11/29(金) 20:46:12.81ちげーよバカ
vectorはrandom_access_iteratorとoperator[]を実装した列コンテナにすぎず
配列かどうかはおまえの妄想しだいだ
0492デフォルトの名無しさん
2013/11/29(金) 20:46:17.51お前は文脈を読む能力が絶望的だな
0493デフォルトの名無しさん
2013/11/29(金) 20:47:11.25実行時に配列サイズを決められない?
こいつらmapという連想配列がC++にあることも知らなさそうだな。
0494デフォルトの名無しさん
2013/11/29(金) 20:47:58.130495デフォルトの名無しさん
2013/11/29(金) 20:49:25.92配列は同じだろ。そこはvectorの話しじゃない。配列と書いてある。
0496デフォルトの名無しさん
2013/11/29(金) 20:49:36.05>>C++はC言語と違って配列のサイズはコンパイル時に決まってないと無理
>C言語も同じだ。
C99可変長配列
>>実行時にサイズが決まる場合はmalloc以外の解決法はない
>vectorあるし、他にもいろいろコンテナあるし、newもある。
それらはコンテナであって配列ではない
まともなC++erならきちんと分けて考えてる
>>vectorは配列ではない
>可変長配列だ。
配列ではない
>>「可変長配列なにこれ便利www」つって何MBもスタックに置き始める馬鹿がでてくるから固定でいい
>vectorは何メガデータを入れようとも管理領域の数バイトしかスタックを消費しない。
"数バイト" ではない
http://ideone.com/oB79hE
>約1名C++ができない知ったか野郎が混ざっているようだね…。
ですね
0497デフォルトの名無しさん
2013/11/29(金) 20:50:49.280498デフォルトの名無しさん
2013/11/29(金) 20:51:43.180499デフォルトの名無しさん
2013/11/29(金) 20:52:17.720500デフォルトの名無しさん
2013/11/29(金) 20:53:46.68「配列」と言った場合は「配列として使えるクラス全て」を含むのか?
0501デフォルトの名無しさん
2013/11/29(金) 20:53:58.230502デフォルトの名無しさん
2013/11/29(金) 20:54:55.35デフォルトのアロケータは各環境のAPI呼んで、Cライブラリのmalloc()なんか呼ばないだろう
>>496
一番下のはそもそもvectorの話じゃなかったのにかわいそうな>>476
0503デフォルトの名無しさん
2013/11/29(金) 20:55:38.28その延長なら ユーザー定義リソース が最凶だな
何しろ解放処理すらいらないし
0504デフォルトの名無しさん
2013/11/29(金) 20:56:49.32vectorを配列扱いなんてひどい
0505デフォルトの名無しさん
2013/11/29(金) 20:58:19.53delete free <あああああ
0506デフォルトの名無しさん
2013/11/29(金) 20:58:35.22言語の用語の厳密な定義の話をしているの?
それとも可変長配列を使いたいという要求をvectorが満たせるかどうかという話をしているの?
最初の質問は、要素数が動的に決まる場合はどうすればいいのかという話だったから、
当然後者だよね。なんで前者の話にすり替えるの?
0507デフォルトの名無しさん
2013/11/29(金) 21:00:30.42sbrk() 呼んだ〜
void* operator new(size_t size, void* pv) 呼んだ〜
0508デフォルトの名無しさん
2013/11/29(金) 21:02:11.04>デフォルトのアロケータは各環境のAPI呼んで、Cライブラリのmalloc()なんか呼ばないだろう
って調べたの?
VCとかdinkumwareとかnew呼んでるだけみたいなんだけど
0509デフォルトの名無しさん
2013/11/29(金) 21:03:40.05std::arrayは使ったことないけど、vectorは配列じゃない、
でも、C++の配列欲しいで出来たのかな。
となるとvectorは配列ってみなしてもらってないのかな
0510デフォルトの名無しさん
2013/11/29(金) 21:06:52.080511デフォルトの名無しさん
2013/11/29(金) 21:07:29.09>>vectorあるし、他にもいろいろコンテナあるし、newもある。
>それらはコンテナであって配列ではない
>まともなC++erならきちんと分けて考えてる
実行時にサイズを決めたいのだからコンテナでいいだろ。
コンテナを使ってはいけない理由は?
0512デフォルトの名無しさん
2013/11/29(金) 21:07:32.470513デフォルトの名無しさん
2013/11/29(金) 21:11:22.35> コマンドライン引数で得た数値を配列の要素数にしたいのですが
って言ってるじゃん
配列を引数に取る関数に渡したいのかもしれないし
そういう用途ならVectorは使えないよね
「要素数が実行時に決まるリスト構造を扱いたいのですが」なら配列でもVectorでもいいと思うけどね。
国語って難しいね。
0514デフォルトの名無しさん
2013/11/29(金) 21:11:32.13vectorは配列じゃないからmalloc使えとか基地外レベルだろ。
vectorで何の不満があるんだよ。
何メガもスタック消費しないから安心して使えよw
0515デフォルトの名無しさん
2013/11/29(金) 21:13:32.18普通はstd::arrayかvector
0516デフォルトの名無しさん
2013/11/29(金) 21:14:10.52>>>506
>> コマンドライン引数で得た数値を配列の要素数にしたいのですが
>
>って言ってるじゃん
>配列を引数に取る関数に渡したいのかもしれないし
>そういう用途ならVectorは使えないよね
コマンドライン引数って書いてあるけど…
0517デフォルトの名無しさん
2013/11/29(金) 21:14:44.74お前も余計なこと言って馬鹿晒してるな
素直にvector使ってもいいだろとだけ言ってりゃ良かったのに
0518デフォルトの名無しさん
2013/11/29(金) 21:15:25.23ポインタ使うだろ。
0519デフォルトの名無しさん
2013/11/29(金) 21:15:29.10は?
だからコマンドライン引数で配列の要素数を決めて、
それを別の関数の引数として渡す可能性もあるよな
そういう時はVector使えないよな
だから「配列の代わりにVector使えばいい」ってのはVectorで代替できる状況以外では全く意味がない回答
0520デフォルトの名無しさん
2013/11/29(金) 21:17:04.33>そういう時はVector使えないよな
なんで?
data()渡せばいいんじゃね
0521デフォルトの名無しさん
2013/11/29(金) 21:17:17.040522デフォルトの名無しさん
2013/11/29(金) 21:17:30.35mallocを使わなくてもコンテナという便利なものがあることを理解できましたか?
コンテナはスタックを何メガも消費しないことは理解できましたか?
0523デフォルトの名無しさん
2013/11/29(金) 21:18:34.02vectorの参照を渡したらいかんの?
0524デフォルトの名無しさん
2013/11/29(金) 21:19:25.86data渡せばいいじゃん
0525デフォルトの名無しさん
2013/11/29(金) 21:19:27.11vectorは配列だと言ってしまったり、お前も無知晒したってことだよ
素直に配列馬鹿wとか言ってればよかったのに
0526デフォルトの名無しさん
2013/11/29(金) 21:19:58.24…もしかしてvector使ったことないとか?
0527デフォルトの名無しさん
2013/11/29(金) 21:20:46.01恐らく初心者でC,C++の区別よく分らない初心者が、
ここに動的配列生成の仕方を質問しただけって思う。
そして、恐らく質問はC++じゃなくC質問だったんだろうと思う
0528デフォルトの名無しさん
2013/11/29(金) 21:20:49.12どうしてVectorが配列を返せないと思ったの?
他の言語だってリストを配列に変換するメソッドは用意されてるだろ
0529デフォルトの名無しさん
2013/11/29(金) 21:22:36.930530デフォルトの名無しさん
2013/11/29(金) 21:26:05.32vectorとlistは別
0531デフォルトの名無しさん
2013/11/29(金) 21:26:20.30俺はvectorは配列だとは言ってないな。
可変長配列だとは言ったけど。
しかし実質的にはほぼ配列として使えるぞ。
C言語の配列を取る関数にポインタを渡せるし、
何より何メガもスタックを消費しない。
0532デフォルトの名無しさん
2013/11/29(金) 21:27:19.39別じゃないよ
0533デフォルトの名無しさん
2013/11/29(金) 21:29:01.97配列として使える?
ならテンプレートで定数として使ってみろ詭弁野郎
0534デフォルトの名無しさん
2013/11/29(金) 21:30:50.20コンテナはスタックを何メガも消費しないことは理解できましたか?
vectorはdataで生配列のポインタを得てC言語の関数に渡せることとが理解できましたか?
0535デフォルトの名無しさん
2013/11/29(金) 21:31:35.360536デフォルトの名無しさん
2013/11/29(金) 21:33:03.38中身が別物
0537デフォルトの名無しさん
2013/11/29(金) 21:34:18.15listが配列って・・
0538デフォルトの名無しさん
2013/11/29(金) 21:37:12.750539デフォルトの名無しさん
2013/11/29(金) 21:37:13.40人間は自由なのだから
0540デフォルトの名無しさん
2013/11/29(金) 21:37:45.69言語定義を厳密に考えれば「配列」ではない。
しかし実質的には配列のように扱えることもある。
ランダムアクセスせずイテレーターで上から辿れば配列っぽい。
そういう意味では抽象的な配列と言える。
そもそもイテレーターパターンが複雑なコンテナを抽象的な配列として扱うためのパターンだから当然なのだけど。
0541デフォルトの名無しさん
2013/11/29(金) 21:39:46.87厳密だってお(バンバン
0542デフォルトの名無しさん
2013/11/29(金) 21:41:56.52そんなこと言ったらmapも配列か?めちゃくちゃだな
0543デフォルトの名無しさん
2013/11/29(金) 21:42:09.60>何でこんなにカオス
C/C++スレがhoge基地スレになり、そこに居た低脳がこっちに移住したからよ
0544デフォルトの名無しさん
2013/11/29(金) 21:44:17.48コンテナはスタックを何メガも消費しないことは理解できましたか?
vectorはdataで生配列のポインタを得てC言語の関数に渡せることが理解できましたか?
>>454の要求を満たすにはvectorで十分であることは理解できましたか?
0545デフォルトの名無しさん
2013/11/29(金) 21:45:50.99配列だろ
つ>こいつらmapというがC++にあることも知らなさそうだな
0546デフォルトの名無しさん
2013/11/29(金) 21:47:36.87配列はぁーいーれすね
0547デフォルトの名無しさん
2013/11/29(金) 21:47:41.73日本語で頼む
0548デフォルトの名無しさん
2013/11/29(金) 21:48:14.94さすがに呆れてきたぞ
0549デフォルトの名無しさん
2013/11/29(金) 21:49:16.440550デフォルトの名無しさん
2013/11/29(金) 21:50:12.79彼にとってはファイルシステムの抽象コレクションも配列なんでしょうね
0551デフォルトの名無しさん
2013/11/29(金) 21:51:07.65コピペミスした
つ > こいつらmapという連想配列がC++にあることも知らなさそうだな。
ということで配列
0552デフォルトの名無しさん
2013/11/29(金) 21:53:42.390553デフォルトの名無しさん
2013/11/29(金) 21:53:48.890554デフォルトの名無しさん
2013/11/29(金) 21:54:10.880555デフォルトの名無しさん
2013/11/29(金) 21:54:28.62ああ、本人じゃなかったのか
すまんすまん
0556デフォルトの名無しさん
2013/11/29(金) 21:56:05.110557デフォルトの名無しさん
2013/11/29(金) 22:00:07.62hogeサイトですよ
>>554
containerは配列なんですよ
0558デフォルトの名無しさん
2013/11/29(金) 22:00:36.150559デフォルトの名無しさん
2013/11/29(金) 22:02:10.160560デフォルトの名無しさん
2013/11/29(金) 22:05:43.31vectorの中身だけポインタとしてmoveする方法ってあるの?
0561デフォルトの名無しさん
2013/11/29(金) 22:05:50.25挙げているように見えるんだけど合ってる?
vector の先頭要素へのポインタを配列として使うことと
malloc で確保した領域を配列として使うこととで違いがあるとは思えないんだけど、
どういう区別してんの?
0562デフォルトの名無しさん
2013/11/29(金) 22:06:14.97vectorを配列代わりに使ってはいけない理由は何なの?
0563デフォルトの名無しさん
2013/11/29(金) 22:06:21.550564デフォルトの名無しさん
2013/11/29(金) 22:07:09.61ある
0565562
2013/11/29(金) 22:07:39.760566デフォルトの名無しさん
2013/11/29(金) 22:08:10.31ごめん、ポインタとして、か
無いかも
0567デフォルトの名無しさん
2013/11/29(金) 22:09:03.850568デフォルトの名無しさん
2013/11/29(金) 22:09:38.05どこにいるんだよ
0569デフォルトの名無しさん
2013/11/29(金) 22:14:17.47俺はvector使うことには賛成の上で
vectorは配列じゃないと言ってるだけだ馬鹿
0570デフォルトの名無しさん
2013/11/29(金) 22:19:00.66std::arrayのみだ(arrayをインクルードしないのは配列といわない)
[]でアクセスできるコンテナなら配列だ([]アクセスが配列をあらわす)
0571デフォルトの名無しさん
2013/11/29(金) 22:19:21.87お前の主張、>>454の質問には何の役にも立たないな。
あとvectorはスタック何メガも消費しないからな。
0572デフォルトの名無しさん
2013/11/29(金) 22:21:26.08まだ言ってるw
無知を煽るつもりが無知さらしえ悔しかったのか?馬鹿w
0573デフォルトの名無しさん
2013/11/29(金) 22:23:29.41まだ言うの?
0574デフォルトの名無しさん
2013/11/29(金) 22:24:05.14vectorはスタックを何メガも消費すると思っていた、
vectorからデータのポインタを読んで関数に渡せないと思っていた彼なの?
0575デフォルトの名無しさん
2013/11/29(金) 22:26:53.00しつこい。
0576デフォルトの名無しさん
2013/11/29(金) 22:27:28.740577デフォルトの名無しさん
2013/11/29(金) 22:29:02.22>>519が恐らくそのお方で俺は>>520
0578デフォルトの名無しさん
2013/11/29(金) 22:30:09.71認めたw 彼が認めたw
同一人物であることを認めてるわこれw
>俺はvector使うことには賛成の上で
えーmallocじゃないとって言ってたの忘れた?
0579デフォルトの名無しさん
2013/11/29(金) 22:33:42.93お前も醜態晒してるんだぞ馬鹿w
0580デフォルトの名無しさん
2013/11/29(金) 22:33:45.700581デフォルトの名無しさん
2013/11/29(金) 22:44:36.49メモリレイアウト
vectorは内部メモリの連続性が保証されている上で、動的にサイズを変更できる唯一のコンテナ
0582デフォルトの名無しさん
2013/11/29(金) 22:58:50.070583デフォルトの名無しさん
2013/11/29(金) 23:03:08.74コンストラクタが呼ばれるか否か
0584デフォルトの名無しさん
2013/11/29(金) 23:03:33.29void doSometing()
{
0585デフォルトの名無しさん
2013/11/29(金) 23:05:40.520586デフォルトの名無しさん
2013/11/29(金) 23:05:57.820587デフォルトの名無しさん
2013/11/29(金) 23:07:19.82void doSometing()
{
T [N];
なんかする
}
const a = atoi(argv[1]);
switch (a)
0588デフォルトの名無しさん
2013/11/29(金) 23:09:47.43void doSometing()
{
T [N];
なんかする
}
const a = atoi(argv[1]);
switch (a) {
template <int N> case N:
doSomething<int, 1>():
break;
}
0589デフォルトの名無しさん
2013/11/29(金) 23:17:54.470590デフォルトの名無しさん
2013/11/29(金) 23:21:44.05{
ErrorHandler<T> handler;
}
0591デフォルトの名無しさん
2013/11/29(金) 23:33:33.500592デフォルトの名無しさん
2013/11/29(金) 23:34:38.940593デフォルトの名無しさん
2013/11/29(金) 23:42:15.11typedef delctype(>>590) hoge;
typedef std::remove_reference<hoge> gehogeho;
return (gehogeho&&)(>>590);
0594デフォルトの名無しさん
2013/11/29(金) 23:50:43.900595重要
2013/11/30(土) 04:31:57.31hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0596デフォルトの名無しさん
2013/11/30(土) 04:50:32.060597デフォルトの名無しさん
2013/11/30(土) 05:11:49.30いい加減くそ寒い
0598デフォルトの名無しさん
2013/11/30(土) 08:29:06.40int arg = 10;
boost::bind(foo, 1, _1)(arg); // -9
boost::bind(foo, 1, _1)(10); //コンパイルエラー
なんでエラー?
下はリテラルじゃなくて arg+1 とかでもダメ
0599デフォルトの名無しさん
2013/11/30(土) 08:44:28.98コンパイル通ったけど
0600デフォルトの名無しさん
2013/11/30(土) 08:49:38.100601デフォルトの名無しさん
2013/11/30(土) 09:08:08.79#include <boost/bind/arg.hpp>
namespace std {
template <> struct is_placeholder<boost::arg<1>> : integral_constant<int, 1> {};
template <> struct is_placeholder<boost::arg<2>> : integral_constant<int, 2> {};
template <> struct is_placeholder<boost::arg<3>> : integral_constant<int, 3> {};
template <> struct is_placeholder<boost::arg<4>> : integral_constant<int, 4> {};
template <> struct is_placeholder<boost::arg<5>> : integral_constant<int, 5> {};
template <> struct is_placeholder<boost::arg<6>> : integral_constant<int, 6> {};
template <> struct is_placeholder<boost::arg<7>> : integral_constant<int, 7> {};
template <> struct is_placeholder<boost::arg<8>> : integral_constant<int, 8> {};
template <> struct is_placeholder<boost::arg<9>> : integral_constant<int, 9> {};
}
とかしたいんだけど。
0602デフォルトの名無しさん
2013/11/30(土) 09:17:04.040603デフォルトの名無しさん
2013/11/30(土) 12:02:40.01http://d.hatena.ne.jp/Cryolite/20040907
0604デフォルトの名無しさん
2013/11/30(土) 19:44:15.080605デフォルトの名無しさん
2013/11/30(土) 20:03:35.130606重要
2013/11/30(土) 20:05:42.66hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0607デフォルトの名無しさん
2013/11/30(土) 20:19:03.350608デフォルトの名無しさん
2013/11/30(土) 20:38:33.130609デフォルトの名無しさん
2013/11/30(土) 20:56:08.040610デフォルトの名無しさん
2013/11/30(土) 21:20:50.50概して効率悪いし破綻も孕むけどロジック的には面白いからね
主体も客体も示さない受動形には、反吐とか殺意とかそっち系だが
0611デフォルトの名無しさん
2013/11/30(土) 21:22:28.100612デフォルトの名無しさん
2013/11/30(土) 22:10:28.14馬鹿か?
0613デフォルトの名無しさん
2013/11/30(土) 22:14:47.960614デフォルトの名無しさん
2013/12/01(日) 00:16:45.810615デフォルトの名無しさん
2013/12/01(日) 01:37:40.790616デフォルトの名無しさん
2013/12/01(日) 02:15:38.79最大階層が不定なら強制的に抜ける処理いれとけ
0617デフォルトの名無しさん
2013/12/01(日) 02:18:28.18そうなるとテールリカージョンを非再帰に変形は手作業だね
0618デフォルトの名無しさん
2013/12/01(日) 02:31:18.74問題は再帰構造ということが直観的にわかりにくくなる事
0619デフォルトの名無しさん
2013/12/01(日) 02:54:41.08再帰の最適化は読めていてこそ成り立つこと
0620デフォルトの名無しさん
2013/12/01(日) 03:22:42.30プログラミングするなら日本語ぐらい読めた方がいいぞ
0621デフォルトの名無しさん
2013/12/01(日) 06:33:05.41>プログラミングするなら日本語ぐらい読めた方がいい
hoge基地が普通のスレ住人には無理な要望って感じ
0622デフォルトの名無しさん
2013/12/01(日) 06:44:01.910623sage
2013/12/01(日) 09:46:58.72つ ほげ
0624デフォルトの名無しさん
2013/12/01(日) 10:14:01.04|r;;;;;ノヾ
|ヒ =r=;'<私の名は保毛
|ヽ二/
⊂ノ
|
0625デフォルトの名無しさん
2013/12/01(日) 10:49:01.440626デフォルトの名無しさん
2013/12/01(日) 11:33:12.300627デフォルトの名無しさん
2013/12/01(日) 12:28:00.410628重要
2013/12/01(日) 12:29:08.93hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0629デフォルトの名無しさん
2013/12/01(日) 12:49:12.400630デフォルトの名無しさん
2013/12/01(日) 13:01:59.970631デフォルトの名無しさん
2013/12/01(日) 13:03:37.81C++のリハビリを兼ねて自分のbindを作ってみたが、むずかしー
何とか動くものができたが300行超えちゃった。
目標200行だったんだが。
0632デフォルトの名無しさん
2013/12/01(日) 13:24:56.320633デフォルトの名無しさん
2013/12/01(日) 13:39:34.17しかも引数は5個まで縛りw
0634デフォルトの名無しさん
2013/12/01(日) 17:01:20.73スタックオーバーフローを避ける方法はいくらでもある
0635デフォルトの名無しさん
2013/12/01(日) 19:56:25.78微妙に違いがあるんですね
0636デフォルトの名無しさん
2013/12/01(日) 20:09:18.21世界を破壊してしまったか
0637デフォルトの名無しさん
2013/12/01(日) 20:19:20.510638デフォルトの名無しさん
2013/12/01(日) 21:16:02.79破壊はしてないけどテンプレートのコンパイルエラーメッセージには精神を破壊されそうになったw
右辺値参照とかdecltypeとか新しめの機能の学習のつもりだったんだけど、
右辺値コンストラクタをどう書いていいのか、まだ確信を得られない・・・
0639デフォルトの名無しさん
2013/12/01(日) 21:17:04.10make love
0640デフォルトの名無しさん
2013/12/01(日) 21:23:53.470641デフォルトの名無しさん
2013/12/01(日) 21:30:32.86左辺値参照となにか変わるわけではない
0642デフォルトの名無しさん
2013/12/01(日) 21:39:18.96hello kotonoha
delete makoto
0643デフォルトの名無しさん
2013/12/01(日) 21:40:52.740644デフォルトの名無しさん
2013/12/01(日) 21:48:12.440645デフォルトの名無しさん
2013/12/01(日) 21:52:57.150646デフォルトの名無しさん
2013/12/01(日) 21:54:19.84右辺値参照で自クラスのオブジェクトを受けるのもコピーコンストラクタっていうの?
class HaGe : public HOge {
Sage m_sage;
HaGe(HaGe&& hage) : ここ { }
コンストラクタ初期化子で何すればいいの?
0647デフォルトの名無しさん
2013/12/01(日) 22:07:23.210648デフォルトの名無しさん
2013/12/01(日) 22:17:18.89なんとなくわかってるんだけど、それは明示的に書かなきゃダメですか?
HOgeとSageにmoveするコンストラクタがある場合、HaGeに HaGe(HaGe&&) を全く書かなかったら?
左辺値のコピコンを書かなかった場合、基底クラスとメンバのコピコンは暗黙で呼ばれてましたよね?
0649デフォルトの名無しさん
2013/12/01(日) 22:28:27.18>>641にある通り、右辺値だからと言って自動的に何かしてくれるわけじゃない。
テストしてみりゃわかる
0650デフォルトの名無しさん
2013/12/01(日) 22:31:06.62ダメに決まってんだろ
moveは暗黙でやってくんねーぞ
0651デフォルトの名無しさん
2013/12/01(日) 22:33:32.24m_sage(std::move(hage.m_sage))
0652デフォルトの名無しさん
2013/12/01(日) 22:38:10.96自分は>>631ですけど、今回ちょっと勉強していろいろわかった。
いったん右辺値で受けても、受けた変数自体は左辺値になってしまうので、さらに別な場所に右辺値として渡すときは
>>651のようにしないとダメ。
そういう仕様が望ましいんだろうけどよくわからない。これから調べる。
0653デフォルトの名無しさん
2013/12/01(日) 22:59:23.67http://ideone.com/cKC2Jm
書いて気づいたがコンストラクタの呼ぶ順序一定じゃないのな
0654デフォルトの名無しさん
2013/12/01(日) 23:09:35.100655デフォルトの名無しさん
2013/12/01(日) 23:10:56.320656デフォルトの名無しさん
2013/12/01(日) 23:26:45.17勉強はいいが bind なんて面白くないだろ。
ラムダ式使えるようになってから存在意義なくなってるんじゃないか?
0657デフォルトの名無しさん
2013/12/01(日) 23:28:19.81オブジェクトはnewしてポインタで処理を基準するのが基本だよ
現実的な話、オブジェクトのコピーなんて稀にしか使い道がない
C#やJavaのやり方が理にかなってるんだよ
0658デフォルトの名無しさん
2013/12/01(日) 23:30:58.97イマイチな釣りだな
0659デフォルトの名無しさん
2013/12/01(日) 23:33:58.33釣りじゃなくてマジな
なら聞くがオブジェクトをコピーして有用な状況ってどんな時だ?
0660デフォルトの名無しさん
2013/12/01(日) 23:38:44.59ハナから仕様として備わってる言語使えってのは強ち間違ってはいない
0661デフォルトの名無しさん
2013/12/01(日) 23:43:59.37オプション設定時みたいにキャンセル(状況に応じた巻き戻し)したいとかいろいろ状況ありすぎて困る
参照はいいものだが、コピーも同じぐらいいいもんだろ。釣りじゃないなら何なんだよw
0662デフォルトの名無しさん
2013/12/01(日) 23:45:09.37短命な値型のオブジェクトだって随所に必要だろ?
0663デフォルトの名無しさん
2013/12/01(日) 23:49:07.13コピーと参照の選択に寿命は関係ない
0664デフォルトの名無しさん
2013/12/01(日) 23:50:58.76最初にマスター情報読んで構築するエンティティオブジェクトはアプリの稼働時間とほぼ同じ寿命。
それ以外は関数やメソッドのスコープ内でしか生きてない。
そいつらも名無しの一時変数だけにできないか検討中w
0665デフォルトの名無しさん
2013/12/01(日) 23:51:19.080666デフォルトの名無しさん
2013/12/01(日) 23:55:13.97全く理由になってない
落第
0667デフォルトの名無しさん
2013/12/01(日) 23:59:34.62a + b で作られる一時オブジェクトがその寿命の短いオブジェクトだろうが
0668デフォルトの名無しさん
2013/12/01(日) 23:59:36.53プログラムを無意味に複雑化させるだけ
0669デフォルトの名無しさん
2013/12/02(月) 00:01:44.47それが理由かよww
0670デフォルトの名無しさん
2013/12/02(月) 00:02:28.85キミは物事を表面的にしかとらえていないね。
おおかた 「friend はカプセル化を破壊するよくない機能」なんて思ってるクチだろ?
0671デフォルトの名無しさん
2013/12/02(月) 00:10:12.36現実的な話をしてる
カスが作るようなゴミ虫クラスは要求されるものが小さいからコピーなんて簡単だよ
でも商業ベースでクラスを作るとなったらそうはいかない
規模がデカくて複雑なだけではなく様々な制約や予算の都合もあり素人がやるような素朴なコピーやクローンでは話にならない
そうなると複製は切り捨ててオブジェクトを参照ベースで管理した方がはるかにメリットがデカイわけだ
価値のあるクラスは大抵コピーやクローンが切り捨てられるから価値のないちっぽけなクラスがそれに合わせるべき
一貫性を保つことによって全体的なパフォーマンスや保守性がぐっと高まる
0672デフォルトの名無しさん
2013/12/02(月) 00:16:31.14c = a + b という式において、当然aとbはconstと考えられるから変化するのはcだ。
cは新しく発生した情報をコピーまたは参照せねばならない。
新しく発生した情報を捨てずに c が参照する機能、それがムーブだ。
>>657の1行目と2行目がどれだけトンチンカンなことを言っているのかおわかりだろう。
0673デフォルトの名無しさん
2013/12/02(月) 00:17:41.72おまえまさか、「規模がデカくて複雑なだけではなく様々な制約がある」クラスを作ってるんじゃないだろうな?
0674デフォルトの名無しさん
2013/12/02(月) 00:18:23.50巨大で複雑なクラスを作る方が素人丸出しやが…
巨大で万能なクラスがあってそいつが全体の調整役を担ってるのは手続型のスタイル。オブジェクト指向には向かない
0675デフォルトの名無しさん
2013/12/02(月) 00:18:55.01newで済む話だろ
moveなど不要
0676デフォルトの名無しさん
2013/12/02(月) 00:19:42.83クラスは要求されるものが小さくなくちゃダメだぞ
分割・分割・分割、と口をすっぱくして指導されなきゃわかんないのか?
0677デフォルトの名無しさん
2013/12/02(月) 00:20:51.36ちっぽけで簡単に管理できるクラスしか作らないやつらは気楽でよ
0678デフォルトの名無しさん
2013/12/02(月) 00:22:19.15ちっぽけで簡単に管理できるクラスに分割するために頭を悩ませるんだろ?
巨大で何でもできるクラスなんて誰でも作れるわ。必要な状態と機能を追加してきゃいいだけなんだから
0679デフォルトの名無しさん
2013/12/02(月) 00:24:50.19a + b でnewされたものを c が受け取るのが move だろうが。
まったく理解してないのだ丸わかりだぞ
0680デフォルトの名無しさん
2013/12/02(月) 00:25:03.19これは逆にコピーをやりにくくするだけ
要件が元から大規模で複雑だとどうしようも無いんだよ
comにも対応しなきゃだしネットワーク接続もするし特殊なデバイスだっていじらなきゃならない
コピーなんかするのはバカな真似でしかないんだ
0681デフォルトの名無しさん
2013/12/02(月) 00:27:17.48どうせ大規模なデータを扱ってるとか言うんだろう
クラスの単位で「簡単に管理」ができなくなった負けの始まりなんだよ。
所有と管理の分離って知ってるか?
0682デフォルトの名無しさん
2013/12/02(月) 00:28:18.04そういう初心者みたいなレベルの話じゃねえのよ
適切に機能分割したってそう簡単に素朴なクラスにはならねえ
それがプロの相手にしてる仕事ってもんだ
趣味や子供のお遊びならそりゃ簡単にコピーできるとこまで分割単純化できるだろうよ
0683デフォルトの名無しさん
2013/12/02(月) 00:29:45.11つまりnewすりゃいいからmoveは要らんちゅう話だろ
要らん機能増やしてどうするんだ
0684デフォルトの名無しさん
2013/12/02(月) 00:30:31.55やれやれ
データだけなら楽なもんだよ
0685デフォルトの名無しさん
2013/12/02(月) 00:31:17.13class ComNetWorlConnectableDeviceController; か?w
0686デフォルトの名無しさん
2013/12/02(月) 00:35:42.820687デフォルトの名無しさん
2013/12/02(月) 00:41:05.42小さいデカイ、メンバー数が多い少ないなんてコピーの実装(保守)とは無関係だからなw
0688デフォルトの名無しさん
2013/12/02(月) 00:41:34.85もともとは>>657の以下の発言がもとになっていると思うが、
> オブジェクトはnewしてポインタで処理を基準するのが基本だよ
> 現実的な話、オブジェクトのコピーなんて稀にしか使い道がない
「適切に機能分割したってそう簡単に素朴なクラスにはならねえ」は正しいとしても、
そういう厄介なものに気をとられ過ぎていないか?
それはそっちで解決してくれ。
オブジェクトのコピーはその問題には役に立たないかもしれないが有用なものだ。
0689デフォルトの名無しさん
2013/12/02(月) 00:42:44.840690デフォルトの名無しさん
2013/12/02(月) 00:45:46.480691デフォルトの名無しさん
2013/12/02(月) 00:46:02.51だんだん具体性に欠ける話になってきた。
c = a + b をあんたが言うような形で実装してみてくれ。
もちろんc++の話
0692デフォルトの名無しさん
2013/12/02(月) 00:46:41.14C#やJavaの基本参照型の言語でもディープコピーが必要になる場面があるだろ。
0693デフォルトの名無しさん
2013/12/02(月) 00:49:34.81という精神だったのか
0694デフォルトの名無しさん
2013/12/02(月) 00:52:55.79あるだけでたまにしかつかわんし
切り捨てていい部分
0695デフォルトの名無しさん
2013/12/02(月) 01:01:54.29矛盾に満ちた思考だな。
0696デフォルトの名無しさん
2013/12/02(月) 01:06:13.93カプセル化を壊す、なんてのは表面的な捉え方だね。
0697デフォルトの名無しさん
2013/12/02(月) 01:07:41.170698デフォルトの名無しさん
2013/12/02(月) 01:12:14.09これも最適化されるの?、
(a + b)、(c + d)の2箇所は左辺値同士の加算で、最後の3つ目は右辺値同士の加算なんだが
0699デフォルトの名無しさん
2013/12/02(月) 01:22:52.71なんでされないと思うの?
0700デフォルトの名無しさん
2013/12/02(月) 01:35:54.78っていう初心者が騒いでるだけだったのか
0701デフォルトの名無しさん
2013/12/02(月) 07:46:49.190702デフォルトの名無しさん
2013/12/02(月) 12:32:44.370703デフォルトの名無しさん
2013/12/02(月) 12:40:34.320704重要
2013/12/02(月) 14:58:08.73hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0705デフォルトの名無しさん
2013/12/02(月) 16:34:00.82情報隠蔽ならfriendいるかもしれんが、
単なるカプセル化ならfriend要らんべ。
struct Path::SimpleContext{略};
void Path::Walk( Path::SimpleContext&, const MoveTo& );
void Path::Walk( Path::SimpleContext&, const LineTo& );
void Path::Walk( Path::SimpleContext&, const CurveTo<2>& );
struct Path::ComplexContext:Path::SimpleContext{略};
void Path::Walk( Path::ComplexContext&, const MoveTo& );
void Path::Walk( Path::ComplexContext&, const LineTo& );
void Path::Walk( Path::ComplexContext&, const CurveTo<2>& );
void Path::Walk( Path::ComplexContext&, const CurveTo<3>& );
template<class ComplexType> void WalkOn( const Example&, ContextType &context )
{
Walk( context, MoveTo( Vector<2>( 0, 0 ) ) );
Walk( context, LineTo( Vector<2>( 1, 1 ) );
Walk( context, CurveTo<3>( Vector<2>( 0.5, 1 ), Vector<2>( 1, 1 ), Vector<2>( 0, 0 ) );
}
SimpleContext simple;
ComplexContext complex;
WalkOn( Example(), simple );
WalkOn( Example(), complex );
0706705
2013/12/02(月) 16:36:48.530707デフォルトの名無しさん
2013/12/02(月) 16:47:17.64せやで。多用すんで。
#( 2 3 2 1 3 1 ) asSet asSortedCollection do:
[ :each |
Transcript
show: each asString;
cr.
].
出力結果:
1
2
3
0708デフォルトの名無しさん
2013/12/02(月) 19:34:59.530709デフォルトの名無しさん
2013/12/02(月) 21:11:37.83>ラムダ式使えるようになってから存在意義なくなってるんじゃないか?
やっぱそうなの?
でも自分的には練習になったし30%くらいは達成して満足。
マクロを使わない -> ○
void*を使わない -> ○
200行以内 -> X 300行近く
std::bindと同じ構文 -> X キモい構文
可変個引数 templateとか使ってみる -> X 全然
0710デフォルトの名無しさん
2013/12/02(月) 23:37:22.080711デフォルトの名無しさん
2013/12/02(月) 23:41:54.930712709
2013/12/02(月) 23:59:56.53ファンクタとして operator( ) を、一応5引数までということで定義するんだけど、
operator () (void) がどうしても定義できない。
投げ出すべきか・・・
0713デフォルトの名無しさん
2013/12/03(火) 00:12:09.36https://twitter.com/
0714デフォルトの名無しさん
2013/12/03(火) 00:16:15.280715デフォルトの名無しさん
2013/12/03(火) 00:28:29.68明示的にしたことでインライン要らなくなったんだよ馬鹿
0716デフォルトの名無しさん
2013/12/03(火) 18:48:36.57普通の奴はそうするけど。でも、ここに居るのはhogeだよhoge。
hogeを受け入れてね
0717デフォルトの名無しさん
2013/12/03(火) 18:56:45.54s/o/a/g
0718デフォルトの名無しさん
2013/12/03(火) 19:21:40.44delete hoge;
use(hage, ETERNALLY);
0719デフォルトの名無しさん
2013/12/03(火) 19:25:14.490720デフォルトの名無しさん
2013/12/03(火) 19:48:41.16一方、hogeは底辺レベルを指す言葉
hage,hige,huge,hege,hogeでC++レベルをさすって日本では常識
お前、hogeだって馬鹿されたら努力してレベル上げれば良いのに、
努力しないで基地化している奴がアンチhogeだろ
0721デフォルトの名無しさん
2013/12/03(火) 19:55:00.70こんな駄スレに書き込んでる奴に名乗る資格はない
0722デフォルトの名無しさん
2013/12/03(火) 20:09:16.900723デフォルトの名無しさん
2013/12/03(火) 20:33:48.26禿げになるまで努力しろ、保毛じゃC++は使えない。
これがhage先生の一番重要な教え。
超高脳の先生でさえ禿るまで努力したんだ
0724デフォルトの名無しさん
2013/12/03(火) 21:07:26.260725重要
2013/12/03(火) 21:50:10.46hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0726デフォルトの名無しさん
2013/12/03(火) 22:00:13.58while文なんですが、条件を書かずwhile(){ }とした場合、無限ループになるんでしょうか?
ググってもなかなか出てきません・・・
0727デフォルトの名無しさん
2013/12/03(火) 22:00:48.830728デフォルトの名無しさん
2013/12/03(火) 22:20:27.190729デフォルトの名無しさん
2013/12/03(火) 22:27:09.180730デフォルトの名無しさん
2013/12/03(火) 22:27:14.120731デフォルトの名無しさん
2013/12/03(火) 22:29:45.83while(true)でVisualC++兄貴が文句を言うから
0732デフォルトの名無しさん
2013/12/03(火) 22:29:47.8830年以上前の K&R にも省略していいとは書いてない
0733デフォルトの名無しさん
2013/12/03(火) 22:33:58.19Christmas
0734デフォルトの名無しさん
2013/12/03(火) 22:35:29.73馴れても未だに頭がよじれる
0735デフォルトの名無しさん
2013/12/03(火) 22:39:37.21ビルドオプションで通るんかな
0736デフォルトの名無しさん
2013/12/03(火) 22:40:15.88プリキュア5
0737デフォルトの名無しさん
2013/12/03(火) 22:40:20.05[ true ] falseWhile: [].
これならどうよ
0738デフォルトの名無しさん
2013/12/03(火) 22:40:57.91よし師ね
0739デフォルトの名無しさん
2013/12/03(火) 23:16:47.600740デフォルトの名無しさん
2013/12/03(火) 23:21:15.53for(;;)を使え
0741デフォルトの名無しさん
2013/12/03(火) 23:32:03.96loop:
goto loop;
0742デフォルトの名無しさん
2013/12/04(水) 00:05:46.070743デフォルトの名無しさん
2013/12/04(水) 00:06:00.51そこは setjmp/longjmpでしょ:-p
0744デフォルトの名無しさん
2013/12/04(水) 00:22:38.100745デフォルトの名無しさん
2013/12/04(水) 00:32:22.540746デフォルトの名無しさん
2013/12/04(水) 00:34:15.97別にいいだろ?
やっと引数なしができた。
ついでに参照を束縛するやつもできた。
0747デフォルトの名無しさん
2013/12/04(水) 00:50:28.08世の中にはしていい事と悪いことがある。
0748デフォルトの名無しさん
2013/12/04(水) 01:05:21.89ほんと日記帳だな。みんなで日記帳しようスレ
0749デフォルトの名無しさん
2013/12/04(水) 01:12:30.460750デフォルトの名無しさん
2013/12/04(水) 01:13:23.57あとはメンバポインタだ
0751デフォルトの名無しさん
2013/12/04(水) 01:20:18.670752デフォルトの名無しさん
2013/12/04(水) 01:23:00.380753デフォルトの名無しさん
2013/12/04(水) 01:23:03.17とういことでC++スレを見にきて、C++した気になる。
今日もC++の予定はないからここに来よう。寝る。
0754デフォルトの名無しさん
2013/12/04(水) 01:25:36.20・豚こま300
・白ねぎ
・シャンプー(いつもの。あれば)
0755デフォルトの名無しさん
2013/12/04(水) 01:30:41.67私はうなじ伸ばしたその手を首筋へと移した。
0756デフォルトの名無しさん
2013/12/04(水) 01:46:51.19私は、加奈子の敏感な部分に手を伸ばす。
0757デフォルトの名無しさん
2013/12/04(水) 03:26:13.83C++ = ビョーン博士 = 禿げ = 保毛禁止 = hoge禁止
というわけか。
逆にみんなでhogeを使ってビョーン博士の頭の進行を食い止めようではないか。
0758デフォルトの名無しさん
2013/12/04(水) 07:06:37.450759デフォルトの名無しさん
2013/12/04(水) 07:31:25.41歯毛だ!
0760重要
2013/12/04(水) 07:36:15.42hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0761デフォルトの名無しさん
2013/12/04(水) 08:19:17.44( ´∀`)< hoge
0762デフォルトの名無しさん
2013/12/04(水) 08:32:31.470763デフォルトの名無しさん
2013/12/04(水) 08:45:16.680764デフォルトの名無しさん
2013/12/04(水) 09:13:39.420765デフォルトの名無しさん
2013/12/04(水) 10:21:50.590766デフォルトの名無しさん
2013/12/04(水) 10:53:53.690767デフォルトの名無しさん
2013/12/04(水) 11:23:59.49せんせい!
C+ C++ はなにが違うんですか
0768デフォルトの名無しさん
2013/12/04(水) 11:30:42.040769デフォルトの名無しさん
2013/12/04(水) 11:57:56.270770デフォルトの名無しさん
2013/12/04(水) 12:19:52.46C 処女
C+ 人妻
C++ 塾女
0771デフォルトの名無しさん
2013/12/04(水) 12:32:26.42「初めてのC+ 〜加奈子の場合〜」
「初めてのC++ 〜トメの場合〜」
0772デフォルトの名無しさん
2013/12/04(水) 13:00:39.350773デフォルトの名無しさん
2013/12/04(水) 13:00:39.620774デフォルトの名無しさん
2013/12/04(水) 13:19:31.210775デフォルトの名無しさん
2013/12/04(水) 13:25:44.940776デフォルトの名無しさん
2013/12/04(水) 13:26:18.17初々しい
0777デフォルトの名無しさん
2013/12/04(水) 14:18:35.450778デフォルトの名無しさん
2013/12/04(水) 16:17:00.710779デフォルトの名無しさん
2013/12/04(水) 17:12:31.21C++は右辺値なので重ねて++できない
0780デフォルトの名無しさん
2013/12/04(水) 17:28:00.32これなら通る
0781デフォルトの名無しさん
2013/12/04(水) 17:49:10.20空の列挙型は合法ですか?
0782重要
2013/12/04(水) 17:53:53.27hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0783デフォルトの名無しさん
2013/12/04(水) 17:59:00.180784デフォルトの名無しさん
2013/12/04(水) 18:05:27.28日本語なのでかなで「ほげ」としたいところですが、
これがサンプル中に出てくると非常に紛らわしくなります
int ほげ=10;
extern int はげ(int);
int ひげ=はげ(ほげ);
わかりにくいですね
int hoge=10;
extern int hage(int);
int hige=hage(hoge);
なんとわかりやすいのでしょう。というわけで名付ける必要のない識別子にはhogeをつかいましょう
foo, barなどいういう軟弱なメタ構文変数とちがいhogeシリーズは
hage, hige, huge, hege, hoge
と何も考えずに5種類もつかえます。 hogeを使いましょう
0785デフォルトの名無しさん
2013/12/04(水) 18:09:40.460786hoge
2013/12/04(水) 18:18:51.73enum-head { enumerator-list(opt)}
enum-head { enumerator-list , }
となってるから、文法には矛盾しない
0787デフォルトの名無しさん
2013/12/04(水) 18:22:59.890788デフォルトの名無しさん
2013/12/04(水) 18:30:08.27キミはC++をあきらめた方が良い
0789デフォルトの名無しさん
2013/12/04(水) 18:52:03.77やめるわ
0790デフォルトの名無しさん
2013/12/04(水) 19:01:22.25operator ++ (int) &&; で右辺値用の後置 ++ にならんか?
0791デフォルトの名無しさん
2013/12/04(水) 19:20:32.040792デフォルトの名無しさん
2013/12/04(水) 19:26:00.000793デフォルトの名無しさん
2013/12/04(水) 19:36:34.930794デフォルトの名無しさん
2013/12/04(水) 19:47:29.660795デフォルトの名無しさん
2013/12/04(水) 20:10:52.730796デフォルトの名無しさん
2013/12/04(水) 20:22:14.69お前の中ではな
0797デフォルトの名無しさん
2013/12/04(水) 20:23:34.610798デフォルトの名無しさん
2013/12/04(水) 20:25:40.35VSまでフルC++11 + C++14の一部までサポートするようになったからな
boostは要らないとはいわないが、必要性は低下したな。
0799デフォルトの名無しさん
2013/12/04(水) 22:15:13.86仕事では、Cと、C++はVC++6.0だけで、あとはC#だな。
0800デフォルトの名無しさん
2013/12/04(水) 22:38:48.830801デフォルトの名無しさん
2013/12/05(木) 00:32:34.25vsがフル対応とか寝言は寝て言え
0802デフォルトの名無しさん
2013/12/05(木) 00:35:21.77VSにおまけでついているのがVCだし。おまけに力なんて入れない
0803デフォルトの名無しさん
2013/12/05(木) 00:36:29.06そんな夢みたいな話でいたいけなwindowsユーザーを騙すのはやめてください
0804デフォルトの名無しさん
2013/12/05(木) 01:02:19.01VC開発者にとって一番大事なのはIDEだし
0805デフォルトの名無しさん
2013/12/05(木) 01:04:19.07ideonで全然通んなくて途方に暮れたよ
0806デフォルトの名無しさん
2013/12/05(木) 10:24:28.71something
example
0807デフォルトの名無しさん
2013/12/05(木) 10:30:07.74Microsoft C/C++ Optimizing Compilerを
clang++に置き換えるのが通なやり方
0808デフォルトの名無しさん
2013/12/05(木) 11:09:23.44http://www.ishani.org/web/articles/code/clangvsx/
こんなんあるけど、茨の道すぎて投げた。
0809デフォルトの名無しさん
2013/12/05(木) 12:12:53.06そんなん使わなくても今は公式で用意してるだろ
0810デフォルトの名無しさん
2013/12/05(木) 13:00:02.35マ・ジ・で!?ちょっとググってくる。
0811重要
2013/12/05(木) 16:26:52.16hogeは禁止します、使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
なお、hogeはNGワードに追加しておくことが強く推奨されています。
0812デフォルトの名無しさん
2013/12/05(木) 17:00:16.66hogeでない奴ならClang++をVSでも使っているだろうな
俺はhogeだから使ってないけど
0813hoge
2013/12/05(木) 17:01:22.64NGワードに登録している人には全くレスが見えず
非常に愉快なことになります。
0814デフォルトの名無しさん
2013/12/05(木) 17:10:28.530815デフォルトの名無しさん
2013/12/05(木) 17:15:06.000816デフォルトの名無しさん
2013/12/05(木) 17:24:40.66日本語なのでかなで「ほげ」としたいところですが、
これがサンプル中に出てくると非常に紛らわしくなります
int ほげ=10;
extern int はげ(int);
int ひげ=はげ(ほげ);
わかりにくいですね
int hoge=10;
extern int hage(int);
int hige=hage(hoge);
なんとわかりやすいのでしょう。というわけで名付ける必要のない識別子にはhogeをつかいましょう
foo, barなどいういう軟弱なメタ構文変数とちがいhogeシリーズは
hage, hige, huge, hege, hoge
と何も考えずに5種類もつかえます。 hogeを使いましょう
0817デフォルトの名無しさん
2013/12/05(木) 18:50:23.350818デフォルトの名無しさん
2013/12/05(木) 19:08:02.200819デフォルトの名無しさん
2013/12/05(木) 20:28:12.59hoge使い=荒らし
0820デフォルトの名無しさん
2013/12/05(木) 20:38:54.13どちらもhoge使い
0822デフォルトの名無しさん
2013/12/05(木) 23:12:37.94>NGワードに登録している人には全くレスが見えず
>非常に愉快なことになります。
ほら、愉快とか何とか言ってhogeを入れることが目的化してる
荒らしの典型だな
0823デフォルトの名無しさん
2013/12/06(金) 02:39:29.42【初心者歓迎】C/C++室 Ver.88【環境依存OK】
ttp://toro.2ch.net/test/read.cgi/tech/1384061494/
0824デフォルトの名無しさん
2013/12/06(金) 19:46:52.230825デフォルトの名無しさん
2013/12/07(土) 00:44:39.010826デフォルトの名無しさん
2013/12/07(土) 01:26:02.07hoge: 低脳、ゆとり、あほ(底辺民)、でも、犯罪を犯せば刑に処せられる
アンチhoge: リアル基地外(精神病疾患、精神崩壊者)、犯罪を犯しても起訴すらされない
だからアンチがわいたらhogeですら相手しないでさっと逃げるよ
0827デフォルトの名無しさん
2013/12/07(土) 04:22:24.610828hoge
2013/12/07(土) 04:58:31.18鬱病発症中って感じだ。
ていうかお前811だろ。
0829デフォルトの名無しさん
2013/12/07(土) 05:37:36.59○ お前は低脳、基地外、精神疾患、鬱病発症中
だと俺は考える
× お前は低脳、基地外、精神疾患、鬱病発症中
→これは誹謗にあたり名誉毀損で訴えられる恐れがあります
それ以前に人としてやめましょう
まあ名前欄がhogeな時点でお察しくださいかな
0830重要
2013/12/07(土) 07:47:31.37hogeは禁止です。使用しないでください。
万が一hogeが書き込まれても、スルーしてください。
相手にするとあなたも荒らしと同じ扱いになります。
0831デフォルトの名無しさん
2013/12/07(土) 08:01:07.45わりとあたらしめの機能(それでも何年も前からある)で、
そういうことをまとめたページを見失ってしまったので
よろしくお願いします
0832デフォルトの名無しさん
2013/12/07(土) 08:03:32.16定義を教えてください
0833デフォルトの名無しさん
2013/12/07(土) 08:09:36.070834デフォルトの名無しさん
2013/12/07(土) 08:11:33.30classA instA = new classA;
の「コード内の文字列"instA"」のことです
ほかに、「コード内の文字列"classA"」を参照することも可能だったはずです
0835デフォルトの名無しさん
2013/12/07(土) 08:13:27.26すいませんが違うと思います
たしか、「__」が使われていた気が・・・・
そういうことが可能になったことを知って感動した記憶があります
0836デフォルトの名無しさん
2013/12/07(土) 08:30:36.75instAは変数名だよね。
これを知るのはC++の範囲では不可能なんで、記憶が誤ってると思うんだ。
記憶を書き換えられた可能性もあるね。
一方で、VSのマクロという意味なら取得できるかもしれないんだけど、
このスレで質問することじゃないんだよね。
つまり、結論だけ言うと
JSはCの二倍速い。
0837デフォルトの名無しさん
2013/12/07(土) 08:37:26.08Linux環境でg++でやりました
もしかしたらGCC拡張か、POSIXかもしれないですけれど
0838デフォルトの名無しさん
2013/12/07(土) 08:38:47.82bindを実装するって話、やっとメンバポインタまでideonで通るようになったので一区切りとします。
200行以内という目標はまったく達成できませんでした。
http://ideone.com/IwZvKM
何とか短くするアイデアない?
0839デフォルトの名無しさん
2013/12/07(土) 08:43:34.29GCC拡張のマクロという場合、cppあるいは言語規格を拡張しているわけですよね。
これはさすがに邪悪すぎないっすか?
よく、M$の独自拡張が邪悪とか言われるわけなんですが、どうも尊師は言うことと
やることに矛盾がある。
世界を救うために地下鉄サリン事件起こすとか。
普通にありえないっすから。
0840hoge
2013/12/07(土) 09:12:10.390841デフォルトの名無しさん
2013/12/07(土) 09:27:16.580842デフォルトの名無しさん
2013/12/07(土) 09:32:05.00彼はあまりにも非力だったが方向性は間違いではなかったといってもよいだろう
0843デフォルトの名無しさん
2013/12/07(土) 09:34:00.850844デフォルトの名無しさん
2013/12/07(土) 10:30:34.420845デフォルトの名無しさん
2013/12/07(土) 11:56:37.00変数名じゃねえか。
因みにC++はクラスオブジェクトが存在しないから、
オブジェクトにインスタンスオブジェクトとクラスオブジェクトの区別がない。
インスタンスと言えばテンプレートのインスタンスを指す。
0846デフォルトの名無しさん
2013/12/07(土) 12:00:09.80はて、それぞれどの様な概念なのか
参考までに教えていただけないでしょうか
0847デフォルトの名無しさん
2013/12/07(土) 12:08:22.85読んどけ
https://ja.m.wikipedia.org/wiki/Smalltalk
0848デフォルトの名無しさん
2013/12/07(土) 12:12:01.07クラスオブジェクト=JAVA()のClassクラスのインスタンス
インスタンスオブジェクト=普通のオブジェクト
インスタンス=テンプレートクラスの実体化されたクラス定義
C++のスレでSmalltalkを語り出す池沼
0849デフォルトの名無しさん
2013/12/07(土) 12:23:34.77オブジェクトをインスタンスと呼ぶ風習は無いし(極一部いるが)
オブジェクトをあえてインスタンスと呼ぶ意味も無い。
0850デフォルトの名無しさん
2013/12/07(土) 12:29:46.70Javaのアレは単なるオブジェクトでクラスオブジェクトじゃないぞ。
クラスオブジェクトと違ってインスタンスオブジェクトと互換性がないからな。
因みにクラスオブジェクトってのは、
SmalltalkやPython、Rubyの言語仕様にも書かれてる割と一般的な用語。
C++のオブジェクトに対し言語仕様でも使われないインスタンスという
呼び方する方が、よっぽど脳内用語。
0851デフォルトの名無しさん
2013/12/07(土) 12:36:19.679ページ目から登場してるようだが
An instance of each object with automatic storage duration
0852デフォルトの名無しさん
2013/12/07(土) 12:40:33.22それオブジェクトのインスタンスを指してるわけでオブジェクトに対しインスタンスと言ってないだろ
0853デフォルトの名無しさん
2013/12/07(土) 12:59:47.43objectはobject。
0854デフォルトの名無しさん
2013/12/07(土) 13:13:45.490855デフォルトの名無しさん
2013/12/07(土) 13:29:16.780856デフォルトの名無しさん
2013/12/07(土) 13:31:32.33標準化委員会の連中が規格規格言ってるの見て頭おかしいと思ってるけど
こういう流れ見てるとそれが必要なことだって感覚で理解できるわ
0857デフォルトの名無しさん
2013/12/07(土) 13:49:03.39class内の予め指定した関数が自動起動、って出来るんでしょうか?
0858デフォルトの名無しさん
2013/12/07(土) 13:51:08.400859デフォルトの名無しさん
2013/12/07(土) 13:55:34.560860デフォルトの名無しさん
2013/12/07(土) 14:05:39.16その為にプロパティという仕組みがあるんじゃないの?
0861デフォルトの名無しさん
2013/12/07(土) 14:07:59.180862デフォルトの名無しさん
2013/12/07(土) 14:11:41.49インスタンスなんて一般的な言葉で厳密な定義はないから。
インスタンスを実体と読み替えてみるといい。
0863デフォルトの名無しさん
2013/12/07(土) 14:15:27.26void Class::SetValue(int value){
m_value=value;
自動起動();
}
0864デフォルトの名無しさん
2013/12/07(土) 14:16:30.51PleaseCallMeOnUpateW()
0865デフォルトの名無しさん
2013/12/07(土) 14:17:17.12自動じゃねーじゃんw
自前で呼出してんじゃん
0866デフォルトの名無しさん
2013/12/07(土) 14:29:01.66コピーコンストラクタをprivateにしてんじゃファンクタとして複数の箇所で使えないよ。
と思ってもう一度見てみたら直ってるw
0867デフォルトの名無しさん
2013/12/07(土) 16:10:35.82主語なしならtemplateのinstanceだと思うな
0868デフォルトの名無しさん
2013/12/07(土) 16:12:42.95書き換えのための関数を用意して、その関数を通してしか書き換えないようにさせておいて
その関数の中で、書き換え前後に別の関数を呼ぶようにすればいいのでは?
0869デフォルトの名無しさん
2013/12/07(土) 16:33:49.81テンプレートのインスタンスのことなら「テンプレートインスタンス」とか言ってもらわないと
>>867
お前は「主語」を何だと思ってるんだ?
0870デフォルトの名無しさん
2013/12/07(土) 17:16:07.37PropertyDescriptor
0871デフォルトの名無しさん
2013/12/07(土) 17:49:23.42ワロタ。そうだな。
C++はゆとり言語でないからコンストラクタ・デストラクタも
ちゃんと自前呼び出しないとだめだからな。
0872デフォルトの名無しさん
2013/12/07(土) 20:05:53.80書き換えようとしたときに指定したハンドラを自動で呼び出すことが出来る
0873デフォルトの名無しさん
2013/12/07(土) 21:55:53.77これ、本当に動くの…?
0874デフォルトの名無しさん
2013/12/07(土) 22:05:40.63「ファンクタ」の要件次第
アルゴリズムに突っ込んだときにどうなるか
0875デフォルトの名無しさん
2013/12/07(土) 22:24:25.82templateのinstanceだろC++でinstance化と言えばtemplateなんだから
0876デフォルトの名無しさん
2013/12/07(土) 22:30:15.74C++でオブジェクトをインスタンスと呼ぶ意味があるのか?
インスタンスなんて口にされたらJava上がりの初心者って
印象を受ける。
0877デフォルトの名無しさん
2013/12/07(土) 22:38:20.24instanceって言葉はC++が参考にしたSimulaの時代から使われているけど、Javaがどうかしたのかい?
0878デフォルトの名無しさん
2013/12/07(土) 22:45:31.37http://staff.um.edu.mt/jskl1/talk.html
SimulaのinstanceはC++でobjectに置き換えられたね
0879デフォルトの名無しさん
2013/12/07(土) 22:55:33.06OOな設計のプログラムをC++という言語で実装する
という場合には問題ないだろ
0880デフォルトの名無しさん
2013/12/07(土) 23:15:04.01が妥当な感覚なのでは?
0881デフォルトの名無しさん
2013/12/07(土) 23:24:47.80正しいかどうかは同じとは限らないぞ
0882デフォルトの名無しさん
2013/12/07(土) 23:42:02.55ooな設計ならクラスオブジェクトもインスタンスオブジェクトも
オブジェクトでしかないのでインスタンスなんていう必要はない
0883デフォルトの名無しさん
2013/12/07(土) 23:44:55.87インスタンスという用語はOOとは関係ないよ
オブジェクトとインスタンスを同一視するのは知識不足を披露してるだけだよ
0884デフォルトの名無しさん
2013/12/07(土) 23:45:09.88インスタンスが〜
インスタンスは〜
いろんな文脈にあてはまりすぎだろ
0885デフォルトの名無しさん
2013/12/07(土) 23:56:46.68「インスタンス」はいくらなんでも普通名詞過ぎるだろ
0886デフォルトの名無しさん
2013/12/07(土) 23:59:08.65日常用語と法律用語の違いと同じ。普通名詞だからあらゆる文脈で同じ意味を持つとは限らない
そしてinstanceは計算機科学の論文では特定の意味を持った用語だ…
0887デフォルトの名無しさん
2013/12/07(土) 23:59:43.18いっそカタカナ英語なんざ使わず、
実体が〜。
実体は〜。
といってもらった方が分かりやすい。
0888デフォルトの名無しさん
2013/12/07(土) 23:59:57.24アナタの言うOOの定義は何ですか?
OOの議論ではインスタンスという言葉がよく使用されますが
関係ないとまで言い切る根拠が不明です
0889デフォルトの名無しさん
2013/12/08(日) 00:01:08.71the instanceなんて殆ど無いよ。
実体と言い替えれば済むものばっかり。
0890デフォルトの名無しさん
2013/12/08(日) 00:03:54.20テンプレートのインスタンスがテンプレートインスタンス。
単にインスタンスと言うだけではどちらの事を指しているのかは特定できない。
0891デフォルトの名無しさん
2013/12/08(日) 00:04:40.520892デフォルトの名無しさん
2013/12/08(日) 00:08:11.80あれ既存の日本語で充分なものばっかだ
0893デフォルトの名無しさん
2013/12/08(日) 00:12:31.14sumimとかminekoaあたりの議論を見てみな。
彼らが引用してる論文にインスタンスの定義が載ってるから。
オブジェクト指向について語りたいならsumimのページを一通り目を通しておかなきゃ土俵にも立ててないぞー
0894デフォルトの名無しさん
2013/12/08(日) 00:15:02.80その論文の中でインスタンスと言ったらこういう意味であると定義したまでのことで、
論文の外でもその定義が通ると主張しているわけではない。
0895デフォルトの名無しさん
2013/12/08(日) 00:18:31.19なるほど「sumin=OOの定義」と考えてしまうから
他人との意志疎通が図れないのですね
0896デフォルトの名無しさん
2013/12/08(日) 00:19:09.79自分が専門用語だと思っていた言葉が一般名詞や動詞で、専門用語でなかったということの驚き。
専門用語でないから一定じゃないし、文脈によって意味が変わる。
だから「専門用語だからこう言えば確実に意味が通じる」と勘違いしないようにしないと話が通じない。
0897デフォルトの名無しさん
2013/12/08(日) 00:22:55.36こうやって言葉遊びで自分のプライドを守ることに固執し始めるともうダメだね。そこで成長は止まる。
>>895
単にオブジェクト指向に関する論文が多く載ってるという意味で紹介しただけだが…w
そもそも二次ソースの個人ブログ主の意見を定義と勘違いするとかありえねーだろう
>>896
そうやって自分の成功体験に酔ってその経験を絶対的な価値基準に置いてる時点でお前はもう成長止まってるんだって。
どんな情報でも「アメリカでの自分の体験」という色眼鏡抜きでは評価できない。
結果として「アメリカでの体験」から一歩も前に進めない。後ろばかり振り返って過去の自分を愛でてるだけ。
0898デフォルトの名無しさん
2013/12/08(日) 00:24:43.77んな下らねえもんより、禿とアランケイ直筆のOOに対する開発史を一回読め
http://gagne.homedns.org/~tgagne/contrib/EarlyHistoryST.html
http://www.stroustrup.com/bio.html
0899デフォルトの名無しさん
2013/12/08(日) 00:26:45.23「これが正しい用語」と言いはる奴は馬鹿
0900デフォルトの名無しさん
2013/12/08(日) 00:27:08.08これも間違い。オブジェクトも一般的な言葉の1つでしかないから文脈を意識しないと意味が変わる。
インプリメンテーションもコーディングと同義だと勘違いしていたけど、通じなくて気付いた。
法律や条例、職場の内規やゲームのルールをインプリメントできるから、「何を」インプリメントするのか明確に言わないと通じない。
0901デフォルトの名無しさん
2013/12/08(日) 00:28:47.85900はISO/IEC 14882:2011を読み直せ
0902デフォルトの名無しさん
2013/12/08(日) 00:31:04.78少なくともアラン・ケイのOOは明確だ
用語も開発史の中で記載されてる。
0903デフォルトの名無しさん
2013/12/08(日) 00:33:02.03お前ぐらいだと思うぞ。普通実体みたいに直訳出来るような言葉を用語だとは思わないから。
0904デフォルトの名無しさん
2013/12/08(日) 00:33:52.66他人との意志疎通が図れないのですねふむふむ
0905デフォルトの名無しさん
2013/12/08(日) 00:36:11.27アラン・ケイのOOで言えば当然間違いだろ
0906デフォルトの名無しさん
2013/12/08(日) 00:38:53.74少なくともお前のオレオレ用語よりはマシだな
0907デフォルトの名無しさん
2013/12/08(日) 00:39:32.08「クラスはオブジェクト指向と関係ないただの言語機能」「インスタンスとオブジェクト指向は関係ない」
などの極端な主張に気を付けること。この手の主張をする奴は大抵アランケイの信泰者
0908デフォルトの名無しさん
2013/12/08(日) 00:43:26.530909デフォルトの名無しさん
2013/12/08(日) 00:45:05.96という排他的な教義を信仰しているということですねふむふむ
0910デフォルトの名無しさん
2013/12/08(日) 00:47:15.64一方数学者はその都度用語の意味を明らかにした、ってことかw
0911デフォルトの名無しさん
2013/12/08(日) 00:55:38.71オレオレ用語ってのはあってるわ
0912デフォルトの名無しさん
2013/12/08(日) 00:57:33.13という排他的な教義を信仰しているのですね
0913デフォルトの名無しさん
2013/12/08(日) 00:57:46.20objectをinstanceとも呼ぶって用語は禿のOOにも無いしAlen C KeyのOOにも無い訳で、
オレオレ用語ってのはあってるわ
0914デフォルトの名無しさん
2013/12/08(日) 01:24:01.47C++オブジェクトの実体はクラスだろ?
0915デフォルトの名無しさん
2013/12/08(日) 01:25:57.560916デフォルトの名無しさん
2013/12/08(日) 01:27:06.820917デフォルトの名無しさん
2013/12/08(日) 01:29:01.95○ クラスを実体化した物はオブジェクト
× クラスを実体化した物がオブジェクト
0918デフォルトの名無しさん
2013/12/08(日) 01:30:20.30プラトニストやドイツ観念論者ならインスタンスは実体ではあり得ないと言うだろう
もっと適切な言葉がある筈
0919デフォルトの名無しさん
2013/12/08(日) 01:33:06.590920デフォルトの名無しさん
2013/12/08(日) 01:49:13.63decltypeの引数になりえるものがオブジェクト
sizeofの引数になりえるものがインスタンス
0921デフォルトの名無しさん
2013/12/08(日) 01:50:14.410922デフォルトの名無しさん
2013/12/08(日) 01:57:13.02どこに書いてあったの?
引用してくれ
0923デフォルトの名無しさん
2013/12/08(日) 02:01:22.43少なくとも辞書的には「実体」はsubstanceなのであってinstanceではないということ
言葉に拘るなら少なくともこれくらいの認識は持ってほしい
そうじゃなければこういった議論は児戯の範疇でしかない
まあ、俺はこういったエレア派起源の実体概念には異を唱える者なんだけどね
0924デフォルトの名無しさん
2013/12/08(日) 02:09:26.11お遊戯以外の何物だと思ってんの?
まさかここでしてる罵り合いが神聖な会議だとでも思ってたの?
0925デフォルトの名無しさん
2013/12/08(日) 02:14:29.53引用ってw
オレの意見を表明しただけ
自分の考えってもの無いの?
0926デフォルトの名無しさん
2013/12/08(日) 02:26:47.39物体は実体があるし実体があるものは物体だし、区別する必要があんまりないよーな。
ただ、「〜の実体」とは言うけど「〜の物体」だと微妙。
0927デフォルトの名無しさん
2013/12/08(日) 02:27:17.29俺が最初にC++覚えたサイトでインスタンスって書いてあったから
インスタンスも許容してください。
0928デフォルトの名無しさん
2013/12/08(日) 02:39:27.83出典と言いたかったんだろ
ボッキキャベツが貧困なんだよ彼は
0929デフォルトの名無しさん
2013/12/08(日) 04:40:27.16仕様書を読むにもいちいち翻訳が必要で、データとしても冗長な日本語とかいう糞
ITやるには最悪だわ
0930デフォルトの名無しさん
2013/12/08(日) 07:29:27.60>>オブジェクトというとクラスのインスタンス
>900はISO/IEC 14882:2011を読み直せ
>>900
>オブジェクトというとクラスのインスタンスであると一意に決まると思うけど、
>これも間違い。
意味が逆になるような引用のしかたをするなよ。
間違いだって書いてあるのにそこを切り取って意味を逆にしてから批判。
0931デフォルトの名無しさん
2013/12/08(日) 08:07:38.67kwsk
ちなみにsizeofは演算子であって関数ではないぞ
0932デフォルトの名無しさん
2013/12/08(日) 08:43:20.00πとか値の定義をするときは式をそのまま提示する。
概念を定義するときは「〜を満たすもの」という形で提示する。
C++限定で
decltypeの引数になりえるものがオブジェクト
sizeofの引数になりえるものがインスタンス
と定義してはどうか、それでうまくいくのではないか、って考えをいってみただけ。
>>920
「演算子の引数」って変?
0933デフォルトの名無しさん
2013/12/08(日) 08:44:14.57>>931 ね
0934デフォルトの名無しさん
2013/12/08(日) 09:06:55.950935デフォルトの名無しさん
2013/12/08(日) 09:11:20.28C++の文法をOO的にどう解釈するかという話ならわかる。
単にC++の文法の話だったら死
0936デフォルトの名無しさん
2013/12/08(日) 09:43:53.63解釈と定義の違い
0937デフォルトの名無しさん
2013/12/08(日) 11:09:45.87tupleとか使えば?
0938デフォルトの名無しさん
2013/12/08(日) 11:56:55.55うわあ
ソースを見た途端目がチカチカしたのは初めてだw
でもboostもこんな感じでマジキチなんだよな
0939838
2013/12/08(日) 12:14:11.98短く書く、ってのが達成できなかった。
できたのは「マクロがなし」くらいだ。
マクロがいっぱいあると追う気力が失せるから、それは良かったんだけどね。
0940デフォルトの名無しさん
2013/12/08(日) 12:19:05.36今時手書きなんてあるのか?
0941838
2013/12/08(日) 12:35:27.15kwsk
ところで親クラスのメソッドっていちいち 親クラス:: って装飾しなくても呼び出せるものじゃないんだっけ?
http://ideone.com/IwZvKM
50行目くらいからある func_signature_base の中でいちいち B:get1(): とか書かなきゃいけないのがウザい。
VCではなくても通るんだけど、ideon ではダメだったからこうしてる。
あと static long test(...); と static ILL return_t(...); も共通だから親クラスに置いときたいんだけど、それもダメ。なんで?
0942デフォルトの名無しさん
2013/12/08(日) 13:34:30.67> ところで親クラスのメソッドっていちいち 親クラス:: って装飾しなくても呼び出せるものじゃないんだっけ?
type-dependent な基本クラスまで name lookup に行かない仕様だから。
0943デフォルトの名無しさん
2013/12/08(日) 14:22:14.58お前のオレオレ定義なんざどうでもいい
0944デフォルトの名無しさん
2013/12/08(日) 14:24:50.61C++はメソッドがないから呼び出すのは無理かな
0945デフォルトの名無しさん
2013/12/08(日) 17:39:13.58どうもありがとう。
親クラスに(43行目の struct func_signature_base0)で大部分の仕事をするように変更しました。
親クラスは太ったけど各サブクラスがすっきりした。
0946デフォルトの名無しさん
2013/12/08(日) 19:28:01.05http://engawa.2ch.net/test/read.cgi/poverty/1386476617/
0947デフォルトの名無しさん
2013/12/08(日) 20:15:33.210948デフォルトの名無しさん
2013/12/08(日) 20:47:42.990949デフォルトの名無しさん
2013/12/08(日) 20:59:21.09なんかCのプリプロセッサとしてLisp使うってネタをどっかで読んだな…と思ってググってたらこんなのが出てきた
http://www.atmarkit.co.jp/news/200909/07/lltv02.html
きめぇww
0950デフォルトの名無しさん
2013/12/08(日) 22:43:53.25“本物のマクロ”ってこんなの?
template <typename T, bool b> struct less2 : std::less<T> {};
template <typename T> struct less2<T, false> : std::greater<T> {};
#define sort2(b, e, ope) std::sort(b, e, less2<decltype(*b), (1 ope 2)>())
int ar1[] = {8, 3, 2, 4, 9, 5, 1, 6, 7};
sort2(ar1, ar1 + 9, < ); //昇順ソート
int ar2[] = {8, 3, 2, 4, 9, 5, 1, 6, 7};
sort2(ar2, ar2 + 9, > ); //降順ソート
0951デフォルトの名無しさん
2013/12/08(日) 23:00:44.950952デフォルトの名無しさん
2013/12/08(日) 23:38:52.280953デフォルトの名無しさん
2013/12/08(日) 23:44:41.380954デフォルトの名無しさん
2013/12/08(日) 23:51:48.540955デフォルトの名無しさん
2013/12/09(月) 00:05:07.26std::cerr << typeid( value ).name() << std::endl;
可変個引数templateとtemplate引数付きtypedefのお陰でますますtemplateによる
関数型プログラミングがしゃすくなった。
0956デフォルトの名無しさん
2013/12/09(月) 09:28:42.98http://engawa.2ch.net/test/read.cgi/poverty/1386476617/
0957デフォルトの名無しさん
2013/12/09(月) 17:31:24.440958デフォルトの名無しさん
2013/12/09(月) 18:13:59.81こういうコードをよく見るんですが
この>>って間をあけないといけないの?
0959デフォルトの名無しさん
2013/12/09(月) 18:17:44.69昔はコンパイルエラー
0960デフォルトの名無しさん
2013/12/09(月) 18:19:05.620961デフォルトの名無しさん
2013/12/09(月) 18:19:06.790962デフォルトの名無しさん
2013/12/09(月) 18:20:07.09Cでもexit使う奴は馬鹿
0963デフォルトの名無しさん
2013/12/09(月) 18:20:25.22馬鹿C++コンパイラーが多かったから
vector<x<int >> とすると">>"がシフトの">>"と誤認識された。
いまのコンパイラーはvector<x<int >>でも問題ないだろう
0964デフォルトの名無しさん
2013/12/09(月) 18:20:43.68今は通るのか…マジか…
0965デフォルトの名無しさん
2013/12/09(月) 18:21:47.280966デフォルトの名無しさん
2013/12/09(月) 18:35:16.270967デフォルトの名無しさん
2013/12/09(月) 18:36:15.520968デフォルトの名無しさん
2013/12/09(月) 19:01:16.47python本体にschemeのコードを見た記憶がある
0969デフォルトの名無しさん
2013/12/09(月) 19:10:18.900970デフォルトの名無しさん
2013/12/09(月) 19:13:53.960971デフォルトの名無しさん
2013/12/09(月) 19:16:22.13int func1(int a, int b) { return a+b; }
struct func2 { int operator()(int a, int b) const { return a*b; } };
auto b = bind(_1, 8, _2);
int c = b(&func1, 7); //15
int d = b(func2(), 7); //56
http://ideone.com/IwZvKM
これができることによって、
0972デフォルトの名無しさん
2013/12/09(月) 19:16:32.71戦いに終わりが訪れることは決してないのだ
賢者はふっと寂しげに笑い、> > とタイプし続けるのだった
0973デフォルトの名無しさん
2013/12/09(月) 19:23:24.980974デフォルトの名無しさん
2013/12/09(月) 20:12:45.28戦いに終わりはないと言って直そうとしないのは残念だな
0975デフォルトの名無しさん
2013/12/09(月) 20:19:07.60ほとんど組み込みの関数オブジェクトが不要になっちゃった
0976デフォルトの名無しさん
2013/12/09(月) 20:54:32.64決めた奴ら100回死ねって感じ
0977デフォルトの名無しさん
2013/12/09(月) 21:03:16.310978デフォルトの名無しさん
2013/12/09(月) 21:03:18.590979デフォルトの名無しさん
2013/12/09(月) 21:10:02.730980デフォルトの名無しさん
2013/12/09(月) 21:11:39.540981デフォルトの名無しさん
2013/12/09(月) 21:15:42.520982デフォルトの名無しさん
2013/12/09(月) 21:17:29.510983デフォルトの名無しさん
2013/12/09(月) 21:18:03.39enum hoge{};
;がもういらない
0984デフォルトの名無しさん
2013/12/09(月) 21:19:19.860985デフォルトの名無しさん
2013/12/09(月) 21:20:48.00>>979を100ぺん読み返せ
どうにかなるかどうかは関係ない
0986デフォルトの名無しさん
2013/12/09(月) 21:22:38.18スレを1からとは言わんが30前ぐらいは読み返せよ
0987デフォルトの名無しさん
2013/12/09(月) 21:27:42.272点相談させていただきたいのですが、
まずコンボボックスのイベントについて、
OnSelChangeで処理をするようにしてるのですが、直接入力する場合もあるので、
OnKillFocusでも同じ処理をしています。
しかし、コンボボックスをマウスで選択した後はフォーカスが残ったままになるので、
操作をするとOnKillFocusも呼ばれてしまい2度処理が走ってしまいます
フォーカスはそのままで、処理を1度にするには何かいい方法はないでしょうか?
2点目はCOMについてなんですが、
CLIやC#だと
using Microsoft.Office.Interop.Excel;
として、簡単にExcelを使えるんですが、
C++でCOMを使うと.Netも必要になってくるんでしょうか?
COMについてはほとんど知識がないもので見当違いかもしれませんがよろしくお願いします。
0988デフォルトの名無しさん
2013/12/09(月) 21:31:04.45というか いい加減だから文法が曖昧になってる気がする
typename T::kuso_tとかやっつけ感が甚だしい
T::template rebind<U>::otherとかマジきもい
0989デフォルトの名無しさん
2013/12/09(月) 21:32:08.500990デフォルトの名無しさん
2013/12/09(月) 21:35:50.04関数内でやると違和感ある
0991デフォルトの名無しさん
2013/12/09(月) 21:36:29.19ttp://www.bing.com/search?q=c%2B%2B+com+excel
0992デフォルトの名無しさん
2013/12/09(月) 21:38:00.800993デフォルトの名無しさん
2013/12/09(月) 21:41:47.74型の導入と変数の宣言をひとつのsimple declarationに
押し込んだからじゃないでしょうか
struct t {} t;
この設計がおUNKO
0994デフォルトの名無しさん
2013/12/09(月) 21:44:53.58ああ、それあったな。俺よく使っているのに、あほすぎだった,orz
0995デフォルトの名無しさん
2013/12/09(月) 21:46:46.50goto hell;
処理
hell:
; ←ここにセミコロン必要なのがキモいです…
}
0996デフォルトの名無しさん
2013/12/09(月) 21:47:33.150997デフォルトの名無しさん
2013/12/09(月) 21:54:56.12こういう関数宣言の文法は覚えにくいです…
0998デフォルトの名無しさん
2013/12/09(月) 22:00:28.01C++11の気合入り関数ってそんな感じに成るのか!
hogerじゃないとhoge++11は使えないのか
0999デフォルトの名無しさん
2013/12/09(月) 22:10:27.55C++相談室 part108
http://toro.2ch.net/test/read.cgi/tech/1386591136/
1000デフォルトの名無しさん
2013/12/09(月) 22:16:39.9610011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。