トップページ⇒tech
1001コメント312KB

C++相談室 part39

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん05/01/24 09:49:52
C++に関する質問やら話題やらはこちらへどうぞ。
ただし質問の前にはFAQに一通り目を通してください。
テンプレートライブラリ(STL含む)に関する質問は
専用の別スレにお願いします。
IDE(VC++など)などの使い方の質問もその開発環境のスレに
お願いします。

前スレ part38
http://pc5.2ch.net/test/read.cgi/tech/1101473340/

過去スレ、関連スレ、関連リンクなどは >>2-20 あたり
0002デフォルトの名無しさん05/01/24 09:50:48
1 http://mimizun.mine.nu:81/2chlog/tech/piza.2ch.net/tech/kako/980/980175292.html
2 http://pc.2ch.net/tech/kako/996/996640937.html
3 http://pc.2ch.net/tech/kako/1003/10038/1003832761.html
4 http://pc.2ch.net/tech/kako/1009/10090/1009071535.html
5 http://pc.2ch.net/tech/kako/1014/10142/1014217496.html
6 http://pc.2ch.net/tech/kako/1018/10184/1018454705.html
7 http://pc.2ch.net/tech/kako/1021/10217/1021787032.html
8 http://pc3.2ch.net/tech/kako/1025/10250/1025010364.html
9 http://pc3.2ch.net/tech/kako/1027/10273/1027347982.html
10 http://pc3.2ch.net/tech/kako/1029/10293/1029315669.html
11 http://pc3.2ch.net/tech/kako/1032/10323/1032345774.html
12 http://pc3.2ch.net/tech/kako/1035/10350/1035005882.html
13 http://pc3.2ch.net/tech/kako/1038/10380/1038031395.html
14 http://pc5.2ch.net/tech/kako/1041/10413/1041328679.html
15 http://pc5.2ch.net/tech/kako/1043/10436/1043605481.html
0003デフォルトの名無しさん05/01/24 09:51:50
16 http://pc5.2ch.net/tech/kako/1045/10457/1045746245.html
17 http://pc5.2ch.net/tech/kako/1047/10475/1047560042.html
18 http://pc5.2ch.net/tech/kako/1050/10501/1050177746.html
19 http://pc5.2ch.net/tech/kako/1052/10526/1052625846.html
20 http://pc5.2ch.net/tech/kako/1055/10551/1055162298.html
21 http://pc5.2ch.net/tech/kako/1057/10575/1057580107.html
22 http://pc5.2ch.net/tech/kako/1060/10603/1060361082.html
23 http://pc5.2ch.net/tech/kako/1062/10626/1062690663.html
24 http://pc5.2ch.net/tech/kako/1066/10665/1066546387.html
25 http://pc5.2ch.net/tech/kako/1067/10679/1067949669.html
26 http://pc5.2ch.net/test/read.cgi/tech/1070164402/ (迷子)
27 http://pc5.2ch.net/test/read.cgi/tech/1074454641/ (迷子)
28 http://pc5.2ch.net/test/read.cgi/tech/1077985164/
29 http://pc5.2ch.net/test/read.cgi/tech/1082047479/
30 http://pc5.2ch.net/test/read.cgi/tech/1084030770/
31 http://pc5.2ch.net/test/read.cgi/tech/1086185282/
32 http://pc5.2ch.net/test/read.cgi/tech/1088236078/
33 http://pc5.2ch.net/test/read.cgi/tech/1090180012/
34 http://pc5.2ch.net/test/read.cgi/tech/1092018643/
35 http://pc5.2ch.net/test/read.cgi/tech/1093958200/
36 http://pc5.2ch.net/test/read.cgi/tech/1096304546/
37 http://pc5.2ch.net/test/read.cgi/tech/1098543578/
38 http://pc5.2ch.net/test/read.cgi/tech/1101473340/
0004デフォルトの名無しさん05/01/24 09:52:48
■基本■
[C++ FAQ]
 http://www.parashift.com/c++-faq-lite/
 http://www.bohyoh.com/CandCPP/FAQ/ (日本語)
  Cとその仕様を比較しながらの解説なので分かりやすい。
  ***** 質問の前に必ずこの二つに目を通してください *****

[禿 Stroustrup]
 http://www.research.att.com/~bs/
[C++ International Standard]
 http://www.kuzbass.ru/docs/isocpp/
 http://www.kuzbass.ru/docs/ansi_iso_iec_14882_1998.pdf
 http://www.iso.org/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=38110&ICS1=35&ICS2=60&ICS3=
[JTC1/SC22/WG21 - C++]
 http://www.open-std.org/jtc1/sc22/wg21

[C/C++ Users Journal]
 http://www.cuj.com/
[cppll (ML)]
 http://www.trickpalace.net/cppll/ (日本語)
0005デフォルトの名無しさん05/01/24 09:53:40
■Books■
amazon.com C,C++関連書籍
 http://www.amazon.com/exec/obidos/tg/browse/-/3956/ref=br_bx_c_1_3/

The C++ Programming Language
 http://www.amazon.com/exec/obidos/ASIN/0201700735/
 http://www.amazon.co.jp/exec/obidos/ASIN/475611895X/ (翻訳)
C++ Primer (3rd Edition)
 http://www.amazon.com/exec/obidos/ASIN/0201824701/
 http://www.amazon.co.jp/exec/obidos/ASIN/4756140068/ (翻訳)
The C++ Standard Library
 http://www.amazon.com/exec/obidos/ASIN/0201379260/
 http://www.amazon.co.jp/exec/obidos/ASIN/4756137156/ (翻訳)
Effective C++
 http://www.amazon.com/exec/obidos/ASIN/0201924889/
 http://www.amazon.co.jp/exec/obidos/ASIN/4756118089/ (翻訳)
More Effective C++
 http://www.amazon.com/exec/obidos/ASIN/020163371X/
 http://www.amazon.co.jp/exec/obidos/ASIN/4756118534/ (翻訳)
Exceptional C++
 http://www.amazon.com/exec/obidos/ASIN/0201615622/
 http://www.amazon.co.jp/exec/obidos/ASIN/4894712709/ (翻訳)
More Exceptional C++
 http://www.amazon.com/exec/obidos/ASIN/020170434X/
Exceptional C++ Style
 http://www.amazon.com/exec/obidos/ASIN/0201760428/
0006デフォルトの名無しさん05/01/24 09:55:15

■Books(Templateまわり)■
Effective STL
 http://www.amazon.com/exec/obidos/ASIN/0201749629/
 http://www.amazon.co.jp/exec/obidos/ASIN/4894714108/ (翻訳)
Modern C++ Design
 http://www.amazon.com/exec/obidos/ASIN/0201704315/
 http://www.amazon.co.jp/exec/obidos/ASIN/4894714353/ (翻訳)
C++ Templates
 http://www.amazon.com/exec/obidos/ASIN/0201734842/
C++ Template Metaprogramming
 http://www.amazon.com/exec/obidos/ASIN/0321227255/
0007デフォルトの名無しさん05/01/24 09:56:01
■Libraries■
[Boost]
 Boost http://www.boost.org/
 (日本語) http://www.kmonos.net/alang/boost/
 (日本語) http://shinh.skr.jp/boost/
[STL]
 STLport http://www.stlport.org/
 SGI-STL http://www.sgi.com/tech/stl/
 STLFilt http://www.bdsoft.com/tools/stlfilt.html
 (日本語) http://www005.upp.so-net.ne.jp/episteme/html/stlprog/
 (日本語) http://www.wakhok.ac.jp/~sumi/stl/
[Loki]
 http://www.moderncppdesign.com/
 LokiPort-MSVC7 http://www.geocities.com/rani_sharoni/LokiPort.html
 LokiPort-MSVC6sp5 http://fara.cs.uni-potsdam.de/~kaufmann/?page=lokiport
[他]
 ACE http://www.cs.wustl.edu/~schmidt/
 Blitz++ http://www.oonumerics.org/blitz/
 flex++ Bison++ http://www.idiom.com/free-compilers/TOOL/BNF-15.html
[他ライブラリリンク集]
 http://www.trumphurst.com/cpplibs/cpplibs.phtml
 (日本語) http://www.kmonos.net/alang/cpp/lib.html
0008デフォルトの名無しさん05/01/24 12:17:14
■関連スレ■
【C++】template 統合スレ -- Part6
http://pc5.2ch.net/test/read.cgi/tech/1101384692/
どこかで誰かがC/C++の宿題を片付けます 38代目
http://pc5.2ch.net/test/read.cgi/tech/1105541524/
C/C++でのWindowsPrograming議論スレ(質問お断り)
http://pc5.2ch.net/test/read.cgi/tech/1049790146/
managed C++ やろうぜ!!
http://pc5.2ch.net/test/read.cgi/tech/1014486422/
ATL/WTL Part3
http://pc5.2ch.net/test/read.cgi/tech/1095442366/
0009デフォルトの名無しさん05/01/24 12:18:18
STLつかうと一気に実行ファイルサイズが10倍に?!
0010デフォルトの名無しさん05/01/24 12:19:19
>>9
環境によるだろ。
俺はBorland-C++5.6.2に -D_RTLDLL オプションを指定して、極力
ランタイムを使用するようにして使っているが、例えばstd::vectorを
使っても使わない時と比べ10Kほどしか増えない。
0011デフォルトの名無しさん05/01/24 12:20:36
>>10
すげえ。ダイナミックリンクしといてファイルサイズが増えないとかいってるよ。この人。
0012デフォルトの名無しさん05/01/24 12:21:30
>>11
#include <stdafx.h>

後氏ね。
0013デフォルトの名無しさん05/01/24 12:22:27
>>12
言葉が悪いな。それで教えているつもりか。
まぁヒントぐらいにはなったな。
うむごくろう。
0014デフォルトの名無しさん05/01/24 13:16:43
ageておくか
個人的に技術系スレで【】は勘弁
0015デフォルトの名無しさん05/01/24 13:23:04
重複?
0016デフォルトの名無しさん05/01/24 13:23:11
?
0017デフォルトの名無しさん05/01/24 13:26:08
>>14
しかも総合スレだしな
0018デフォルトの名無しさん05/01/24 13:26:57
C++Templateスレあたりで、STL関係をC++相談室に統合って話になったんじゃなかったか。
0019デフォルトの名無しさん05/01/24 13:37:16
déjà vu?
0020デフォルトの名無しさん05/01/24 15:16:25
>>18
普通に淡々と書けばいいのにな
0021デフォルトの名無しさん05/01/24 15:26:09
C++(STL含む)相談室 とか?
0022デフォルトの名無しさん05/01/24 17:29:17
或いは38スレの伝統を守って C++相談室(STL含む) part39 とか。

STLに関しては、スレタイに含めず>>1に書けば十分な気もするけどな。
どのみちtemplateスレもstlじゃ引っかからないんだし。
0023デフォルトの名無しさん05/01/25 14:44:05
stl単体でスレ立てるバカがいるから明記しないと駄目
0024デフォルトの名無しさん05/01/26 21:58:08
このコードがコンパイルとおらない理由がどうしてもわからんです。
class point{
private:
int x;
int y;
public:
point(int a,int b){x = a; y = b;}
virtual void show();
};
void point::show()
{
cout << "x:" << x << endl;
cout << "y:" << y << endl;
}
class 3Dpoint:public point{
private:
int z;
public:
3Dpoint(int a,int b,int c):point(a,b){z = c;}
void show();
};
void 3Dpoint::show()
{
cout << "x:" << x << endl;
cout << "y:" << y << endl;
cout << "z:" << z << endl;
}
0025デフォルトの名無しさん05/01/26 22:03:55
>>24
3Dpoint ←数字で始まる識別子は許されない。
0026デフォルトの名無しさん05/01/26 22:05:11
>>24
あと、基底クラスのメンバをprivateにしているが、これだと派生クラスからアクセスできない。
protectedにすべき。
0027デフォルトの名無しさん05/01/26 22:14:31
>>25-26
どうもです。
コンパイルできました。
0028デフォルトの名無しさん05/01/27 09:52:58
News 2005-01-26: The C++ Standard Library Issues List (Revision 34) is available
0029デフォルトの名無しさん05/01/30 22:03:27
test
0030デフォルトの名無しさん05/02/04 01:52:12
test
0031森05/02/04 09:28:35
C++で、RS232からデータを得て、このデータでxファイルの3d画像が動かせたい(
例え:車3d画像)、サンプル source code がございませんか?
教えて頂ければ、幸いです。有難う。
Email: [email protected]
0032デフォルトの名無しさん05/02/04 09:52:14
>>31
外人さんですか?
0033デフォルトの名無しさん05/02/04 23:06:00
>>24
なんでエラーメッセージを読まないのか知りたい。
0034デフォルトの名無しさん05/02/07 17:04:16
>>31 は中国人
0035デフォルトの名無しさん05/02/08 02:28:02
_CrtSetDbgFlag(_CRTDBG_ALLOC_MEM_DF|_CRTDBG_LEAK_CHECK_DF);
でリークチェックしたんですが、ファイル名、行番号が表示されない。
どなたか原因分かる方いらっしゃいませんでしょうか。
リーク情報は表示されますがファイル名、行番号のみが表示されません。

#define CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>
の順で記述してます。
_CrtSetDbgFlagマクロは、プログラムエントリポイント始めに記述。

VC++スレが無いのでここで質問させて頂きました。
0036デフォルトの名無しさん05/02/08 03:42:10
>>35
あんたの目は節穴か?
http://pc5.2ch.net/test/read.cgi/tech/1104843249/
http://pc5.2ch.net/test/read.cgi/tech/1101931660/
0037デフォルトの名無しさん05/02/08 03:47:42
俺の目はドーナツだ。
0038デフォルトの名無しさん05/02/12 09:32:10
質問etc.の後に "Thank you." みたいな語句をつけるのは
日本以外では共通なのかな。
私は英語とタイ語ぐらいしか分からないけど
0039デフォルトの名無しさん05/02/25 13:43:54
test
0040デフォルトの名無しさん05/03/02 00:04:38
test
0041デフォルトの名無しさん05/03/04 01:54:21
【標準C++】C++相談室 part39【STL含む】
http://pc5.2ch.net/test/read.cgi/tech/1106466303/

↑の次スレとして再利用する?
0042デフォルトの名無しさん05/03/04 02:18:41
>>41
うん。
0043デフォルトの名無しさん05/03/04 09:54:21
さぁ、みなさんあったまってきたところで
テキストファイルの一行の処理1024バイトについて。
0044デフォルトの名無しさん05/03/04 10:50:58
向こうのスレでも書いたけど、1024と言う数字は兎も角1行全部読み切らなくていい応用ならfgets()もありジャマイカ。
1行全部読みきる必要があるならそれなりに処理しなければいけないのは言うまでもないとして。

私のところでは、設定ファイルみたいなものを処理するときには1行200バイト以内という前提で書くことが多い。
あー、そう言えば1024なんて仮定はしたことないな。その長さのテキストファイルを想定するなら素直に全部読みきる対処するから。
0045デフォルトの名無しさん05/03/04 10:59:15
見えない人のためにもう一度age
0046デフォルトの名無しさん05/03/04 11:14:36
でもistream + getline の組み合わせでいいんじゃないの?
fgets使う意味でもさ。
0047デフォルトの名無しさん05/03/04 11:18:34
v(^・^)vv(^・^)vv(^・^)vv(^・^)vv(^・^)vv(^・^)vv(^・^)vv(^・^)vv(^・^)vv(^・^)v
0048デフォルトの名無しさん05/03/04 11:21:37
>>43
状況によるんじゃ。
テキストファイル 「全般」 に対して処理することが要求されるなら、
一行の文字数によって、無条件に読めない部分があってはならない。
プログラムのconfigファイルを処理したいなら、そのconfigファイルの仕様によって変わる。
configファイルでは(おそらくコンソールの横幅との歴史的関係で)一行80文字くらいにすることが多い。
この場合は1024文字でも(あるいは256文字でも)差し支えないだろう。
最も、configファイルに限定するなら、boost::program_optionsの使用を検討した方が良いかもしれない。
付け加えるなら、行という概念で扱うより、XMLなど行依存のないフォーマットを採用するのも手だ。

クラスのコンストラクタあたりに
class X {
 const size_t size_;
public:
 X(const size_t& size = 1024) : size_(size) {};
};
とデフォルト値を忍ばせる手もあるのかな。スマートじゃないな。
0049デフォルトの名無しさん05/03/04 11:22:58
前スレのダライアス継承をテンプレに入れるべき
005093805/03/04 11:26:44
ダライアス継承:
  A   B   C
 /\ /\ /\
D   E   F   G
|   |  |   |
H   .I.   J   K
 \/ \/ \/
  L   M   N
 /\ /\ /\
O   P   Q   R
 \ | × | /
    S   T
     \/
      U
0051デフォルトの名無しさん05/03/04 13:08:28
fgetsつかうと一気に行サイズが1024バイトに?!
0052デフォルトの名無しさん05/03/04 13:37:24
>>50
利用用途を考えて見たが、

  A   B
 /\ /\
D   E   F

まずここから用途が無い
0053デフォルトの名無しさん05/03/04 13:59:00
getlineも文字数を引数で指定できるよね?
つまり、一行読むのに可変長で読むか固定長で読むかは
C++の範囲で選択できるんじゃないの?
C言語の関数使う必要ない気もする。
streamにしとけば、いろいろSTLの恩恵受けられる可能性あるしさ。
0054デフォルトの名無しさん05/03/04 15:51:46
>>53
std::istream::getlineは選べるが、std::stringに文字列を格納するstd::getlineは文字数を指定できない。
0055デフォルトの名無しさん05/03/04 17:35:27
百戦錬磨の尾舞らに聞くが
Windowsのc++コンパイラでコンパイル時間が一番速いのってどれよ?gcc?やっぱVCのcl?
0056デフォルトの名無しさん05/03/04 17:39:50
Windowsのコンパイラとは? Windowsにコンパイラがバンドルされているとは聞いたことがないのだが。
コンパイル時間が速いとは? 時間が速いと言う概念は理解しかねるのだが。
#俺の時間は速いがお前の時間は遅いとでも言うのかな?
0057デフォルトの名無しさん05/03/04 17:40:48
質問者が質問者なら回答者も回答者だな
0058デフォルトの名無しさん05/03/04 18:15:49
百戦錬磨じゃ全然無いけど、使ったことのある中では
コンパイル開始からビルドが終わるまでにかかる時間はbccが速かった。
ただしbccはnamespaceやtemplate周りがイマイチ。最適化もイマイチ。

そもそも漏れはtemplate厨なのでビルド時間はデフォルトで長いのと
言語の標準サポート具合や最適化の質のが重要なファクタなので
Win32/64環境で動作するC++コンパイラのビルドに要する時間は気にしない方がいいんじゃ。

Boostに書いてあったコンパイラリスト↓
* GNU C++ 2.95.x, 3.0.x, 3.1.x, 3.2
* Comeau C++ 4.2.45.2
* SGI MIPSpro 7.3.0
* Intel C++ 5.0, 6.0
* Compaq's cxx 6.2
* Microsoft Visual C++ 6.0, 7.0
* Borland C++ 5.5.1
* Sun WorkShop 6 update 2 C++ 5.3
* Metrowerks CodeWarrior 8.1
0059デフォルトの名無しさん05/03/04 18:57:11
こうなったらCOBOLでも使うしかないな。
0060デフォルトの名無しさん05/03/04 19:24:35
>>44
>その長さのテキストファイルを想定するなら素直に全部読みきる対処するから。

全部読みきる時点で素直ではないでしょ。
単に、チョー長い行を扱う場面に遭遇しなかっただけだと思う。
普通は弾く。自分の想定外の長さは弾いてこそ、安全なわけで。
00616005/03/04 19:25:34
>>44
・・・スマン。文章よく読んでなかった。吊ってくる。
0062デフォルトの名無しさん05/03/05 00:24:55
まー、別にどの関数使おうが、どんなポリシーで処理しようが何でも構わないとは思うが。仕様に沿ってれば。
どんな入力がくるか分からない、ということを想定する程度には、どんな仕様があるか分からない、
ということも想定するべきではないか?
その意味で 1024 超えは想定(゚�听)イラネ には釈然としないものを感じる。
0063デフォルトの名無しさん05/03/05 00:55:48
> 仕様に沿ってれば。
これが全てだろう。

で、どんな仕様が良いのかって話が別に存在するんだろうて。
0064デフォルトの名無しさん05/03/05 08:00:25
型定義と変数定義をいっきにやっちゃう書き方をtemplateな型でもやりたいのですがうまくいきません

struct aaa{ void f(){} } a;
template<class T>struct bbb{ void f(){} } <int> b;
 
int main()
{
  a.f();
  b.f();
  return 0;
}
0065デフォルトの名無しさん05/03/05 08:24:26
>>64
クラステンプレート使う意味がないジャン。
00666405/03/05 11:17:07
あるよ
0067デフォルトの名無しさん05/03/05 11:58:46
>>64
不可能
0068デフォルトの名無しさん05/03/05 12:56:14
>>66
あるか?
0069デフォルトの名無しさん05/03/05 13:51:57
>>64
これはだめ?

template<class T>struct bbb{void f(){}static bbb x;};
template<class T>bbb bbb::x;
int main()
{
 bbb<int>::x.f();
}
0070デフォルトの名無しさん05/03/05 13:54:55
2行目しくじった。
template<class T>bbb<T> bbb<T>::x;
0071デフォルトの名無しさん05/03/05 18:16:21
// ここ の部分は、規定クラスのコンストラクタだけを
使いたいのですが、こうやって空関数を作らないと、コンパイルが通りません。
何か、空関数を使わないで、コンパイルを通す方法無いでしょうか?(VC6)
class CAa
{
public:
 CAa() {printf("bone aa\n"); }
 CAa(string s) {printf("bone(%s)\n", s); }
 virtual void print() = 0;
};
class CMona : public CAa
{
 void print() { printf("mona\n"); }
public:
 CMona(string s) {}   // ここ
};
class CGiko : public CAa
{
 void print() { printf("giko\n"); }
public:
 CGiko(string s) {}    // ここ
};
void main()
{
 string s = "hage";
 CMona mona(s);
 CGiko giko(s);
 CAa* pAa;
 pAa = &mona;
 pAa->print();
}
0072デフォルトの名無しさん05/03/05 18:24:25
>>71
コンストラクタは継承されない。
よって、省略できない。
0073デフォルトの名無しさん05/03/05 18:38:06
>>72
デフォのコンストラクタは継承されるのに?
0074デフォルトの名無しさん05/03/05 18:43:20
>>73
継承されるわけではなくて、自動生成されると考えた方が分かりやすいと思う。

struct base {base(){}};
struct derived : public base{};

の場合、derivedのデフォルトコンストラクタが次のように生成される。

struct derived : public base { derived(){}};

で、これはbaseのコンストラクタを明示的に呼び出していないから、
baseのデフォルトコンストラクタが使われる。

struct derived : public base {derived() : base() {}};

結果的に、継承されたように見える。
00757405/03/05 18:46:14
言い忘れたけど、明示的に書かれたコンストラクタが一つでもある場合、
デフォルトコンストラクタは自動生成されない。
たとえば、>>71の例でCMonaにデフォルトコンストラクタはない。
このことからも、デフォルトコンストラクタが継承されないと分かると思う。
0076デフォルトの名無しさん05/03/05 19:27:15
>>74-75
すんまそ。ここ読んで、もう一度出直します
http://www.kab-studio.biz/Programing/Codian/Cpp/05.html
007733205/03/06 03:48:20
virtualについてなんだが、
・仮想関数=上書きされちゃう関数
・仮想継承=共用されちゃうクラス
・仮想デストラクタ=派生デストラクタも呼ぶデストラクタ
という事になるよな?

一貫して無くないか?皆はどうやってこの紛らわしい物を納得してるんだ。
0078デフォルトの名無しさん05/03/06 03:53:19
同じ名前に異なるセマンティックを与えるのが
C++流。static とかもそうだな。
0079デフォルトの名無しさん05/03/06 04:07:38
キーワードをむやみに増やせなかったという事情があるらしい

純粋仮想関数の =0; ってのもなかなか苦しいよな
0080デフォルトの名無しさん05/03/06 04:40:33
まぁその辺のなぜなにに関してはC++ D&Eを読め、となるわけだが。
0081デフォルトの名無しさん05/03/06 06:48:07
C++使うケースだとOO使わないでtemplateにしちゃうんだよね。
C#みたいに気持ちよくOOできないし
0082デフォルトの名無しさん05/03/06 07:00:43
標準C++のどの規格に準拠しているかは__cplusplusマクロで知ることができますが
使用しているコンパイラが何か(マニファクチャとバージョン)を識別するマクロが
掲載されているところを知りませんか?
0083デフォルトの名無しさん05/03/06 09:40:48
typename みたいな藁もあるな・・・
0084デフォルトの名無しさん05/03/06 10:09:41
>>81
> C++使うケースだとOO使わないでtemplateにしちゃうんだよね。
それだとコンパイル時に確定しない動的バインディング使えないじゃん。
ありえんよ。
0085デフォルトの名無しさん05/03/06 10:46:15
>>84
でも、コンパイル時にできることはコンパイル時にやっちゃおう、って気にはなる。
0086デフォルトの名無しさん05/03/06 13:01:40
別に virtual なんて必ずしも使わなくたってオブジェクトを作ることを指向するプログラミングはやればできるさ
0087デフォルトの名無しさん05/03/06 14:22:59
>>86
その手の極論を言うなら、アセンブリ言語でも OO できる、というところに辿り着く。
なんか詭弁のガイドライン通りの展開でアレだが。
0088デフォルトの名無しさん05/03/06 15:41:03
アセンブラでOOは現に色んな分野でやってることで極論でも詭弁でもないぜ
0089デフォルトの名無しさん05/03/06 15:43:16
要するに、OOPとOOP言語は違うってことだ。C++とVC++くらい違う。
0090デフォルトの名無しさん05/03/06 16:18:28
つまりあれか
毛の生えた女と生える前の女くらいのさ。
0091デフォルトの名無しさん05/03/06 16:26:31
・どちらも女じゃないか
・毛が生えているからこそ女だ
・毛の生えていない女しか無理だ
・実は毛のない方が好きだが、生えていても問題なく行える <- 俺は、この辺
・どちらも駄目だ
0092デフォルトの名無しさん05/03/06 18:03:07
C++とVC++は、別に大差ないだろ。
毛の生えた女と生える前の女は、雲泥の差だがな(・∀・)
0093デフォルトの名無しさん05/03/06 18:10:26
>>77
virtualな継承・・・・ 一度だけ菱形継承するためにやった
いまは反省している
0094デフォルトの名無しさん05/03/06 20:30:55
シンプル伊豆ベスト
009533205/03/06 21:48:56
>>94
「遠出するよりも近場で済ませてしまおう」
0096デフォルトの名無しさん05/03/06 21:50:06
>>93
仮想継承はそれ以外に使い道は無いのかな
0097デフォルトの名無しさん05/03/07 03:11:59
>>96
外道な使い方だが、「派生禁止」。
0098デフォルトの名無しさん05/03/07 21:00:40
>>97
全然外道じゃない。そういう考え方もある。
0099デフォルトの名無しさん05/03/07 21:14:24
基本クラスからの継承より融合の方がイイ

0100デフォルトの名無しさん05/03/08 11:59:40
>>91
毛が生えていれば剃ればいいじゃない
                              マリーアントワネット
0101デフォルトの名無しさん05/03/08 13:06:57
毛が嫌なら、ょぅι゛ょとつきあえばいいじゃない マリー
■ このスレッドは過去ログ倉庫に格納されています