■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
C++相談室 part22
251
名前:
202
:03/08/14 17:59
>>246
ありがとう。。。
252
名前:
デフォルトの名無しさん
:03/08/14 19:42
>>247
class benki {
static const int unko=0xF00D;
};
定食になりますた
253
名前:
デフォルトの名無しさん
:03/08/14 20:06
>>252
Scatologyパターンってやつですね
254
名前:
デフォルトの名無しさん
:03/08/14 21:20
>>253
ヤヤウケタ
255
名前:
デフォルトの名無しさん
:03/08/14 22:29
C++超初心者なのですがよろしくお願いいたします。m(__)m
関数を実装するのに
func(CPoint* pPoint)
とポインタで実装するか
func(CPoint& Point)
と参照を使って実装するか迷うのですが
どういう風に使い分ければいいのでしょうか。
256
名前:
直リン
:03/08/14 22:29
http://homepage.mac.com/maki170001/
257
名前:
デフォルトの名無しさん
:03/08/14 22:34
>>255
いろいろ流派があるんだけど、大きく分けると2派。
1. NULL が来る可能性がある場合のみポインタで後は参照。
2. 関数内部で値を書き換えるならポインタ、そうでないなら参照
(呼び出し側で、値渡しと明らかに区別が付くように)
俺は 1 の方。
258
名前:
255
:03/08/14 22:50
>>257
レスありがとうございます!
あっ、ヌルポインタが来る場合があるのですね。
MFCを勉強しているのですが、たいていポインタで渡して
いるのでなんでだろうと思ったのですが、積極的に
参照を使ってもいいんですね。納得です!
259
名前:
デフォルトの名無しさん
:03/08/14 22:56
>>258
MFC ってもうかなり古いから、
MFC の設計方針はあんまり当てにならんよ。
260
名前:
デフォルトの名無しさん
:03/08/14 23:14
まあ、古いから駄目と言うわけでもないんだが、
折れは特別な理由がない限りはほとんどポインタ。
最悪、仕様変更があったときでも対応しやすいし。
(賛否があるのはわかった上でね。)
261
名前:
デフォルトの名無しさん
:03/08/15 06:48
おれは
>>257
のでいくと2かな。
だからint unko(const hoge& hage)とかしかつかったことないなぁ。
262
名前:
デフォルトの名無しさん
:03/08/15 07:05
俺はオブジェクト指向上の要素としてのクラスは全部ポインタ経由だな。
つか、どうせ生成〜保持〜破棄とポインタで扱うことがほとんどだから、
いちいち関数の引数に渡すときにデリファレンスするのも馬鹿らしいって
理由なんだが。
263
名前:
デフォルトの名無しさん
:03/08/15 07:34
値で多態ができる仕組みが欲しい。
RTIを駆使すれば実装できるんじゃないかねえ
264
名前:
247
:03/08/15 08:54
>>250-252
コンパイル時に置き換えてくれるの?
265
名前:
デフォルトの名無しさん
:03/08/15 09:21
実際にどうなるかなど気にしない方がいい
266
名前:
デフォルトの名無しさん
:03/08/15 10:15
ある1つのクラス内でしか使わない定数ってどんな風に定義してる?
1. static const int unko = 100;
2. const int unko;(初期化リストで初期化)
3. enum { unko = 100, };
4. クラス外でconst int unko = 100;
5. #define unko 100
6. 憧れのあの子はウンコなんてしない
267
名前:
デフォルトの名無しさん
:03/08/15 10:17
>>266
お前、「6. 憧れのあの子はウンコなんてしない 」と書きたかっただけだろ?
268
名前:
266
:03/08/15 10:20
>>267
いや、いたって真面目な質問です。
6. は定数なんて使わないって意味。
269
名前:
デフォルトの名無しさん
:03/08/15 10:47
1. static const int unko = 100;
3. enum { unko = 100, };
これ以外は機血画位
270
名前:
デフォルトの名無しさん
:03/08/15 10:49
特に4と5はな。
271
名前:
デフォルトの名無しさん
:03/08/15 11:05
2はクラス内定数じゃない気が
272
名前:
266
:03/08/15 11:21
ごめん、今まで4の基地外だった。
他人様のソース見る限りでは1は少数派かな?
って事で3で逝きます。
273
名前:
デフォルトの名無しさん
:03/08/15 11:43
>>266
4.はcppファイルの方に書くんでしょ?
それならよく使う。
ヘッダファイルを汚さない手を他に思いつかないんだよね。
274
名前:
デフォルトの名無しさん
:03/08/15 12:02
>>273
cpp内で継承クラス作って、そこに書けばいいのでは?
275
名前:
デフォルトの名無しさん
:03/08/15 12:03
>>272
272 みんな好き好んで 3 を使ってるわけじゃない。
ほんとは 1 にしたいけど、古いコンパイラ(VC6 のとか)は
1 を定数として認識してくれないから。
(固定長の配列の宣言とかに使えない)
>>273
cpp ファイル内で使いたいんなら static つけてファイル内スコープに。
276
名前:
デフォルトの名無しさん
:03/08/15 12:05
リンケージ
277
名前:
デフォルトの名無しさん
:03/08/15 12:07
>>275
4.2 -1-
"The use of the static keyword is deprecated when declaring objects in namespace scope."
278
名前:
デフォルトの名無しさん
:03/08/15 12:14
今から借りてきたあの本を根性で前ページスキャンします。
279
名前:
デフォルトの名無しさん
:03/08/15 12:20
>277
それがどう関係するのか教えてください。
namespaceスコープではなくclassスコープの話をしているのだと認識していました。
280
名前:
デフォルトの名無しさん
:03/08/15 12:26
>>272
テンプレートとも相性抜群だからおいらも 3 をお薦めしとくよ。
281
名前:
266
:03/08/15 13:04
共有するソースなら3を、そうでなければ1を。
状況に応じて4を使い分ければいいかな?
所で文字列定数ってどうしてる?
クラス外で const char* unko = "もりもり";
これは逝って良し?
282
名前:
デフォルトの名無しさん
:03/08/15 13:39
どんなプログラムかによってどんな手段がいいかは変わってくる。
フォーマルにやる必要がある場合は、面倒くさいけど
文字列定数に関してはそれだけをひとつのファイルに
まとめたりするのがベスト。
おちゃらかでいい場合はリテラル文字列をその場で直埋め。
283
名前:
デフォルトの名無しさん
:03/08/15 15:09
const char * const unko = "もりもり";
じゃねぇーの?
284
名前:
山崎 渉
:03/08/15 15:15
(⌒V⌒)
│ ^ ^ │<これからも僕を応援して下さいね(^^)。
⊂| |つ
(_)(_) 山崎パン
285
名前:
デフォルトの名無しさん
:03/08/15 17:16
age
286
名前:
デフォルトの名無しさん
:03/08/15 19:45
あげ
287
名前:
デフォルトの名無しさん
:03/08/16 10:07
>>281
static const char unko[];
をクラス内に作って、
.cpp 内で const char Unko::unko[] = "もりもり";
と初期化。
288
名前:
デフォルトの名無しさん
:03/08/16 11:16
>おちゃらかでいい場合はリテラル文字列をその場で直埋め。
ファイルかリソースだな
289
名前:
デフォルトの名無しさん
:03/08/16 11:19
>>288
多言語化しやすいしな。
290
名前:
デフォルトの名無しさん
:03/08/16 11:44
>>288
お前はたった数十行規模のプログラムでもそんなことするのか?
まぁ、止めはせんが。
291
名前:
デフォルトの名無しさん
:03/08/16 11:45
>289
YAGNI
292
名前:
まりりんまんそん
:03/08/16 16:19
先輩の皆様、膣問させてください。m(__)m
{
int *i;
float *f;
double *d;
i = new int;
f = new float;
d = new double;
//何らかの処理
delete d,f,i; // ←ココ
}
最後の行のdelete文はi,f,dの指す3つの領域をすべて正しく解放しますか?
それとも、
delete d;delete f;delete i;
のようにちゃんとばらばらに記述しないといけませんか?
bcc32でコンパイルしてみてるんですが、いずれもエラーはでません。
ちゅか、メモリが解放されたかどうかのチェックのしかたがわからないよ、ママン。('・c_・` )
293
名前:
デフォルトの名無しさん
:03/08/16 16:24
>>292
deleteされるのはiだけ。
,演算子(コンマ演算子)を調べるべし。
294
名前:
デフォルトの名無しさん
:03/08/16 16:26
> delete d,f,i; // ←ココ
ダメ。 これだと d の指す領域しか開放されない。
(delete d), f, i;
http://www.microsoft.com/japan/developer/library/vclang/_pluslang_c.2b2b_.operators.htm
295
名前:
デフォルトの名無しさん
:03/08/16 16:32
>>292
> ちゅか、メモリが解放されたかどうかのチェックのしかたがわからないよ、ママン。('・c_・` )
Borland の C++Builder を買えば
http://www.borland.co.jp/cppbuilder/papers/codeguard/index.html
とかでチェックできるけど。free版だとなさそうな気がする。
296
名前:
まりりんまんそん
:03/08/16 16:39
>>293-294
サンクスです。マンコ^h^h^hコンマ演算子、調べてみます。
>>295
今のところ適当なループを書いてクラッシュするまでまわしたりしてますが・・・。
そうですか、ありませんか・・・。;_;
回答ありがとうございました。m(__)m
297
名前:
デフォルトの名無しさん
:03/08/16 16:43
デストラクタが呼ばれた時に何らかの情報を出力するクラスを作って試せばいいじゃない。
298
名前:
293
:03/08/16 17:18
ごめんなさい。虚偽を書きました。
294氏が正しい。
299
名前:
デフォルトの名無しさん
:03/08/16 17:35
似たような落とし穴にこんなのがある。
ttp://www.tietew.jp/cppll/archive/8838
(後半部分)
300
名前:
デフォルトの名無しさん
:03/08/16 22:05
コーポレイトソフトウェアていうサポセンの馬鹿が
PGに喧嘩売ってます。
http://money.2ch.net/test/read.cgi/haken/1057486349/287
腹立ちました。
みんなでやっつけにいこう。
301
名前:
デフォルトの名無しさん
:03/08/16 22:22
んなことで所構わず貼って回るなよな。
302
名前:
デフォルトの名無しさん
:03/08/16 22:25
C++勉強中の者ですが、マクロがいまいち理解できません。
宣言した名前に数字や命令などを入れるんですよね?
それで後から書き換える時に楽にできる、と。
そこで疑問なのですが、例えば数字を入れる場合で、
普通に変数でやる場合と何か違いはあるんですか?
命令を入れる場合でも、普通に関数でやれば良いような・・・
あと、C++とC#を比較するとどの辺が違いますかね?
303
名前:
まりりんまんそん
:03/08/16 22:30
>>302
マクロは「単なる文字列である」ことが重要。
例えば
#define M男 鞭で叩かれ蝋燭で熱せられることに喜びを見出す者。雄
と定義すると、
コンパイル時にソースコード中の「M男」という文字列が
「鞭で叩かれ蝋燭で熱せられることに喜びを見出す者。雄」に置き換わる。
単にテキストが置換されるだけなので、
どんな文字の定義も許される。
逆にいうと、置換された結果が正しいプログラム文であるかどうかは、
プログラマが保証しなければならない。
・・・たしか、こんな感じ。
304
名前:
デフォルトの名無しさん
:03/08/16 22:37
>>302
マクロはC言語からのレガシー(遺産)で、昔は const や inline なんかがなかったのよ。
だからいまなら const や inline なんかでやるようなことを全部マクロでやってたわけ。
だから const や inline なんかでできることでマクロを使うの避けましょう。
まぁ、よくわかんなかったら今はとりあえずマクロは他に打つ手が無い時の最後の手段だってことだけ覚えとけ。
305
名前:
デフォルトの名無しさん
:03/08/16 22:39
どんな例だYO!!w
306
名前:
デフォルトの名無しさん
:03/08/16 23:17
// マクロの簡単な罠ドゾー
#define TAX 1.0+0.05
void main(){
printf("1000*TAX=%.0f", 1000*TAX);
}
307
名前:
デフォルトの名無しさん
:03/08/16 23:34
const, inline, template, ... などを駆使すれば、
マクロが必要になることってのはあんまりない。
まぁ、完全になくなるってことはないけど。
308
名前:
デフォルトの名無しさん
:03/08/16 23:39
class fusianasan {
void putchar();
};
309
名前:
デフォルトの名無しさん
:03/08/16 23:39
マクロはALGOL60で言うところのcall by nameによる呼び出しを実現していると
考えることができる。
普通のC++の関数の呼び出しは call by value である。
ただし、仮引数が参照の場合は call by reference(参照渡し) である。
310
名前:
春は来ない
:03/08/17 00:31
それは、それは、空を越えて〜 やがて、やがて、迎えに来る〜♪
311
名前:
デフォルトの名無しさん
:03/08/17 04:29
クラスのstaticな関数はインライン展開されるのでしょうか?
コンパイラ依存であれば、VisualC++ 2003 について
教えて欲しいです。
312
名前:
デフォルトの名無しさん
:03/08/17 04:54
インライン展開を期待する書き方(クラス定義内に書くかinline指定する)をしており、
コンパイラがインライン展開可能な関数であればインラインになる。
コンパイラにも依存するが
関数自体にも依存するので一概には言えない。
313
名前:
デフォルトの名無しさん
:03/08/17 06:32
>>311
インライン展開される【保証があるか】
インライン展開される【場合があるか】
どっちが知りたいんだ?
前者なら
http://www.webstore.jsa.or.jp/webstore/Com/FlowControl.jsp?lang=jp&bunsyoId=ISO%2FIEC+14882%3A1998&dantaiCd=ISO&status=1&pageNo=0
後者ならアセンブラ嫁
314
名前:
デフォルトの名無しさん
:03/08/17 06:36
インライン展開に関係ありそうなことと、なさそうなことを考えてみれ。
・再帰
・関数ポインタ
・リンケージの種類
315
名前:
311
:03/08/17 07:19
>>312-314
どうもありがとうございました。
316
名前:
デフォルトの名無しさん
:03/08/17 16:36
それほど多くを知らないせいか、そこら辺のフリーソース見ても、
例外処理をしているものは、ほとんど皆無です。
趣味グラムくらいでは、例外処理って、あまり有用じゃないのでしょうか?
317
名前:
デフォルトの名無しさん
:03/08/17 16:51
>>316
んなこたない。
けどC++の例外クラスは腐ってるから簡単お手軽に使う気はあまりしないよ。
せめてエラーの原因をstringで持たせりゃいいのに。
318
名前:
デフォルトの名無しさん
:03/08/17 16:59
>>317
はぁ?
stringで持たせるクラスを派生させればいいだけじゃ?
319
名前:
316
:03/08/17 17:03
プロとアマの違いは、エラー処理の厳密さだ!と指摘され、ショックのあまり気がふれ
例外処理でコードを埋めようとしたところ、あまりの例のなさに、がっかりしてたとこでした。
>>317
レスありがとうございます。やっぱり使いづらいのですね。
stringなら簡潔でよかですねぇ。処理の流れを分けて、
可読性を高めるはずなのに、かえってシンプルじゃ無くなったりで…。
どっかで綺麗に実装してるコード例とかないかなぁ…。
320
名前:
デフォルトの名無しさん
:03/08/17 17:04
それよりstringを投(ry
321
名前:
316
:03/08/17 17:05
ぉぅ、書いてる間に…
>>318
なるほどなるほど、やはり皆さんそれぞれ独自に
自分用例外クラスを設けてるんでしょうか。
322
名前:
デフォルトの名無しさん
:03/08/17 17:07
例外ってC言語のsetjmp,longjmpに相当するぐらいの負荷があるのでしょうか?
323
名前:
デフォルトの名無しさん
:03/08/17 17:11
C++の例外クラスってこれだもんな・・・
始めてみたときハァ?って思ったよ。
class exception {
public:
exception () throw();
exception (const exception&) throw();
exception& operator= (const exception&) throw();
virtual ~exception () throw();
virtual const char* what () const throw();
};
まともな例外クラスとはこういうものを言うんだよ。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemexceptionmemberstopic.asp
324
名前:
316
:03/08/17 17:33
>>323
うーーむ、すいません。熱心に読んでは見たのですが
使い方が良く分からなくて….NETが無いと駄目なのかな…。
なんとなく、すごそうだってのは良く分かりました。
325
名前:
デフォルトの名無しさん
:03/08/17 17:36
>>323
ハァ? それと同じようなモン派生させてそれ使えばいいだろ。何度も言わせんな馬鹿。
326
名前:
316
:03/08/17 17:50
>>325
レス番違うけど、俺へのレスかな…すんません、もう何がなにやら。
327
名前:
316
:03/08/17 17:52
あまり長引いても迷惑ですし、まだしばらくは分相応に
返り値でエラーチェックに戻ります…レスありがとうございました
328
名前:
デフォルトの名無しさん
:03/08/17 17:57
レス番違うく無いけどね
329
名前:
デフォルトの名無しさん
:03/08/17 18:12
厨房用例外クラス
class Error
{
std::string message;
public:
Error(std::string msg): message(msg){}
std::string const &Message(){ return message; }
static void Check(bool exp, std::string message){
if(!exp) throw Error(message);
}
};
int main(int argc, char* argv[])
{
int n = 0;
try{
Error::Check(n==3, "n==0でなければならない");
}catch(Error &e){
std::cout << "ERROR:" << e.Message() << std::endl;
}
return 0;
}
330
名前:
デフォルトの名無しさん
:03/08/17 18:16
assertで十分
331
名前:
デフォルトの名無しさん
:03/08/17 18:32
>>322
について誰か知りませんか?
332
名前:
デフォルトの名無しさん
:03/08/17 18:33
>>331
自分でasmファイル吐くコンパイルオプション付けて調べてみたらどうですか?
333
名前:
デフォルトの名無しさん
:03/08/17 18:35
>>332
知らないならだまっててね
334
名前:
デフォルトの名無しさん
:03/08/17 18:38
チンカス
335
名前:
デフォルトの名無しさん
:03/08/17 18:39
プ
336
名前:
デフォルトの名無しさん
:03/08/17 18:39
↓以下厨の煽りあい
337
名前:
デフォルトの名無しさん
:03/08/17 18:40
asmも分からないのに速度なんて気にしてる時点で厨丸出し
338
名前:
デフォルトの名無しさん
:03/08/17 18:42
てかさぁ、質問されたこと以外のことを書き込んでる時点で荒らしじゃね?
339
名前:
デフォルトの名無しさん
:03/08/17 18:44
夏全開
340
名前:
デフォルトの名無しさん
:03/08/17 18:47
_,,,,,.........,,,,__
/:;:;:;:;:;:;:;:;:;:;:;:;:;,丶
.. さっさと教えれ… /:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;.,ヽ
i' ' ' ' ' ' ' ' 'i;:;:;:;:;:;:;:;:;.,|
,.-‐¬ ̄-、¨¬‐、 |\,. 、/ L:;:;:;:;:;:;.;.l
////""`'""''ヽソ-‐l=・= =・= ヽ:;/¨iノヽ、
//////」 -=== } | ,ノ./lllll/、
i//ノソ,._______,.""' '".i, l `_ ./lllll/ ヽ
ヽ彡i.6 ̄ ̄i.,__ノ⌒i.,_ノ ..::ゝ.,_____,,,...- /llllllll/ ヽ
/ヽ ゝ' ,rti.l.l.l.、)ゝノlllllllllゝ.,__,ノlllllllllllllソ .}
⌒`ヽ、ヽ li ./ヽllllllllllllllllllllllllllllllllllllllliゝ / /
、 V ヽ ゝ _,......__ ノノ ヽllllllllllllllllllllllllllllllllli/ ./
丶、,.、,ヽ ミ三 ` ¬ ‐‐---‐¬ ¨ ̄
((  ̄ ̄ ¨¬‐- ..,_
l 川 |
341
名前:
デフォルトの名無しさん
:03/08/17 18:53
あーあ、役に立たねぇ板だな。時間損した。
342
名前:
デフォルトの名無しさん
:03/08/17 18:56
>>341
使うのが難しい板ですからね。
質問者のレベルによっては何の役にも立たないんですよ。
343
名前:
デフォルトの名無しさん
:03/08/17 18:59
>>341
只なんだよ、只。
乞食根性は仕方ないが
少しは隠せ、恥を知れ。
344
名前:
デフォルトの名無しさん
:03/08/17 19:03
おみやげ。
技術系メーリングリストで質問するときのパターン・ランゲージ
http://www.hyuki.com/writing/techask.html
真・技術系メーリングリスト FAQ
http://www.geocities.co.jp/SiliconValley/5656/
メーリングリストを掲示板に置き換えても通用するから読んでね。
345
名前:
↑↑↑↑↑↑↑↑
:03/08/17 19:07
ブラクラ
346
名前:
デフォルトの名無しさん
:03/08/17 19:37
ところで、
>>322
について誰か知りませんか?
347
名前:
デフォルトの名無しさん
:03/08/17 19:41
>>346
ある
# 人に聞くよりプログラム書いて時間計れ!
348
名前:
デフォルトの名無しさん
:03/08/17 19:41
>>347
知らないならだまっててね
349
名前:
デフォルトの名無しさん
:03/08/17 19:43
チンカス
350
名前:
デフォルトの名無しさん
:03/08/17 19:43
無限ループの予感!
351
名前:
デフォルトの名無しさん
:03/08/17 19:47
while (true) {
ところで、
>>322
について誰か知りませんか?
自分で調べてみたら?
知らないならだまっててね
チンカス
}
352
名前:
デフォルトの名無しさん
:03/08/17 19:52
#ってなに
C#って単語を時々きくけど。
353
名前:
デフォルトの名無しさん
:03/08/17 19:53
>>348
は騙りかJava厨、C#厨だと思うが
アセンブラで見るか、それがわからなきゃ
簡単なベンチマークぐらい書けよ。つーか、レベル低杉。
#
>>352
は釣りと見た。
354
名前:
322
:03/08/17 20:00
うう、すいません・・・つまらない質問してしまって・・・
私は322以降発言していないのですが・・・
私のせいでなんかスレが荒れてしまって本当に申し訳ない・・・
話は変わるのですが、
>>322
のレスについて誰かご存知の方はいらっしゃいませんか?
355
名前:
デフォルトの名無しさん
:03/08/17 20:07
>>354
謝らなくていいから
>>353
が言っていることを無視するな
356
名前:
デフォルトの名無しさん
:03/08/17 20:07
今日C++を始めたんですが、
BCC5.5で
/////////////////////////
#include <iostream.h>
int main(void)
{
cout << "test002";
return 0;
}
/////////////////////////
をコンパイルすると、
/////////////////////////
致命的エラー F1003 c:\(省略)\include\stdcomp.h 5: erroe 指令: Must use C++ for STDCONP.h
/////////////////////////
と、表示されコンパイルできないんですが、、、
ちなみに堀越一雄著「決定版初めてのC++」を参考にしています。
著者が使用しているg++コンパイラじゃないと使えないんでしょうか?
それともiostream.hが入ってないだけ?
お願いします。
357
名前:
デフォルトの名無しさん
:03/08/17 20:08
理論抜きでいきなりベンチとったりアセンブラソース眺める奴は馬鹿。
358
名前:
322
:03/08/17 20:08
>>355
知らないならズボンのチャックを閉じていてください。
359
名前:
デフォルトの名無しさん
:03/08/17 20:12
>>356
拡張子がcppになっていないとか
360
名前:
デフォルトの名無しさん
:03/08/17 20:12
>>356
本古すぎ
361
名前:
デフォルトの名無しさん
:03/08/17 20:16
オブジェクトのアンワインドの分だけ例外が遅い。
362
名前:
デフォルトの名無しさん
:03/08/17 20:20
>>357
アセンブラのソース眺めれば理論が分かるだろ
363
名前:
デフォルトの名無しさん
:03/08/17 20:22
>>359
拡張子は「c」になってます。
>>360
図書館でC++関連の本を探したらコレしかなかったんで・・・。
364
名前:
356
:03/08/17 20:22
>>357
コレ、私です。
365
名前:
356
:03/08/17 20:23
>>363-364
失礼こっちでした。
焦りすぎ、、、
366
名前:
デフォルトの名無しさん
:03/08/17 20:25
>>365
拡張子cppにして本屋にいって本を買ってきなさい
367
名前:
356
:03/08/17 20:34
>>366
あっ!
出来ました!
ありがとうございます・・・。
何度もスイマセンが
独習用として買う場合のお勧めを教えて下さいませんか?
値段は安ければ文句無いですがひとまず保留として、
C++初心者分かりやすいのをお願いします。
368
名前:
デフォルトの名無しさん
:03/08/17 20:38
なんでできるんだろ
.hつけるとstd::がいらなくなる???
369
名前:
デフォルトの名無しさん
:03/08/17 20:43
>>367
ttp://www5c.biglobe.ne.jp/~ecb/cpp/cpp00.html
所々間違いもあるっぽいがとりあえずこのへんでもみとけ。
370
名前:
デフォルトの名無しさん
:03/08/17 20:44
>>368
.h 付きのヘッダは namespace std が無かった頃の負の遺産なので。
371
名前:
356
:03/08/17 20:47
>>369
参考になりました。
ありがとうございます。
372
名前:
デフォルトの名無しさん
:03/08/17 20:47
一般的には .h 付きのヘッダは推奨ではないが、
移植性を考えると現状では .h 付きのヘッダのほうがよかったりする。
373
名前:
デフォルトの名無しさん
:03/08/17 21:00
>>372
んなこたぁない。
374
名前:
デフォルトの名無しさん
:03/08/17 21:22
C++本気でマスターしようとするなら、本代は最低2万はかかるよねぇ
375
名前:
デフォルトの名無しさん
:03/08/17 21:23
>>374
最近はネットですむけどね。
376
名前:
デフォルトの名無しさん
:03/08/17 21:33
>>374
英語が読めれば、ネットで読みきれないほどの記事があふれてる。本要らない。
377
名前:
デフォルトの名無しさん
:03/08/17 21:36
>>354
だから
「ある」
ってさっき言ったじゃん
378
名前:
デフォルトの名無しさん
:03/08/17 21:37
>>370
わしの使っている本にはusing namespaceに関する表記がまったくないのですが、
なんかいいサイトを知りませぬか?;q;
379
名前:
デフォルトの名無しさん
:03/08/17 21:47
>>373
.h 付きでないヘッダに対応している処理系を対応し始めたバージョンを併記して
5つ以上リストアップしてくれ。それができないならそんなこと言うな。
できたら負けを認めよう。
380
名前:
デフォルトの名無しさん
:03/08/17 21:55
C++勉強中です。
とあるクラスでひとつのメンバ関数をconstにしたら、連鎖的に書き換える必要がでてきて、
最終的に全てのメンバ関数がconstになり、全てのメンバ変数がmutableになりました。
これってたぶん使い方を誤ってますよね。
mutableの効果的な使用法を解説しているサイトはありませんでしょうか?
381
名前:
373
:03/08/17 21:57
>>379
めんどくさい。STLport使えよ。
382
名前:
デフォルトの名無しさん
:03/08/17 22:00
>>380
mutable使わない方向でお願いします。
383
名前:
デフォルトの名無しさん
:03/08/17 22:02
>>381
STLportって printf とか C 言語のときからの標準関数も含んでるの?
384
名前:
デフォルトの名無しさん
:03/08/17 22:04
mutable を使う例としては参照カウントぐらいで、
それ以外で mutable を使うことは滅多にない。
385
名前:
デフォルトの名無しさん
:03/08/17 22:05
>最終的に全てのメンバ関数がconstになり、全てのメンバ変数がmutableになりました。
意味なし。最強
386
名前:
381
:03/08/17 22:06
>>383
ごめん、聞かれてる意味がわからない。
387
名前:
デフォルトの名無しさん
:03/08/17 22:07
VC7.1でSTLPortって使えるの?
388
名前:
デフォルトの名無しさん
:03/08/17 22:07
通報しました
389
名前:
380
:03/08/17 22:08
>>382
>>384
ありがとうございます。
しばらくは mutable は存在しないものとして学習を進めていくことにします。
390
名前:
380
:03/08/17 22:10
>>385
やっぱり・・・。そんな気はしたんですよね。
391
名前:
デフォルトの名無しさん
:03/08/17 22:11
メンバ変数を変更するメンバ関数ではconstを付けるな
メンバ変数を見るだけのメンバ関数にはconstを付けろ
392
名前:
デフォルトの名無しさん
:03/08/17 22:12
メンバ変数を見るだけのメンバ関数なのにiteratorで舐め回すとエラーが出ます。
393
名前:
デフォルトの名無しさん
:03/08/17 22:15
>>392
const_iteratorでも?
394
名前:
デフォルトの名無しさん
:03/08/17 22:15
>>392
const_iteratorにしる。
395
名前:
デフォルトの名無しさん
:03/08/17 22:16
>>392
const_iteratorじゃだめ?
396
名前:
デフォルトの名無しさん
:03/08/17 22:17
>>379
> .h 付きでないヘッダに対応している処理系を対応し始めたバージョンを併記して
> 5つ以上リストアップしてくれ。それができないならそんなこと言うな。
知らんが、今後シェア最大になるであろう Visual Studio .NET 2003 には .h 付きヘッダが
含まれていないのだが。それでも .h を入れた方が移植性が高いと思うのか?
397
名前:
デフォルトの名無しさん
:03/08/17 22:20
C++って一貫して一貫性がないな。
398
名前:
デフォルトの名無しさん
:03/08/17 22:21
322と名乗っている教えて君に【無礼者】のレッテルを貼る
教授または先輩に見放された理由がよくわかる
399
名前:
デフォルトの名無しさん
:03/08/17 22:22
それは一貫性だな。
400
名前:
デフォルトの名無しさん
:03/08/17 22:23
>>396
それは今後の話だろ?
現状では同じ VC でも未だにバージョン6が主流。
401
名前:
デフォルトの名無しさん
:03/08/17 22:25
>>400
で、だから.hつけるのかね?
402
名前:
デフォルトの名無しさん
:03/08/17 22:26
メタ一貫性だろ
403
名前:
デフォルトの名無しさん
:03/08/17 22:27
>>396
まじ!?
じゃあCのソースをコンパイルできないじゃん。
404
名前:
デフォルトの名無しさん
:03/08/17 22:31
>>403
無いのはiosteam.hとかだろ。たぶん。
Cでコンパイルすればいいんだしさ。どうせ。
405
名前:
デフォルトの名無しさん
:03/08/17 22:33
>>401
.h 付きじゃないとダメな処理系の時にはどうしてるの?
#if をいちいち使ってるの?
406
名前:
デフォルトの名無しさん
:03/08/17 22:36
>>405
.h 付きだとダメな処理系の時にはどうしてるの?
#if をいちいち使ってるの?
407
名前:
デフォルトの名無しさん
:03/08/17 22:39
>>406
そんな処理系使ったことないある。
そんな処理系、実際どれくらいあるの?
408
名前:
デフォルトの名無しさん
:03/08/17 22:42
.h月じゃないと駄目な処理系に出くわしたら
泣く泣く自分で.h付かないヘッダ作って、中で.h付きのファイルをincludeしてください
409
名前:
デフォルトの名無しさん
:03/08/17 22:45
>>408
で、.h 付きだとダメな処理系ってどれくらいあるの?
410
名前:
デフォルトの名無しさん
:03/08/17 22:51
>>409
VC++.NET 2003
411
名前:
デフォルトの名無しさん
:03/08/17 22:53
>>410
それだけなの?
412
名前:
デフォルトの名無しさん
:03/08/17 22:54
gccでも最近のバージョンは警告出す。
413
名前:
デフォルトの名無しさん
:03/08/17 22:55
>>412
コンパイルは通るんでしょ?
414
名前:
デフォルトの名無しさん
:03/08/17 22:56
>>411
67%のシェアをほこる処理系ですが
415
名前:
デフォルトの名無しさん
:03/08/17 22:59
>>414
旧バージョン含めたらでしょ
416
名前:
デフォルトの名無しさん
:03/08/17 23:00
>>414
それはどこが公表してるどういう数字?
できたらソースきぼんぬ。
417
名前:
デフォルトの名無しさん
:03/08/17 23:01
ウザ
418
名前:
デフォルトの名無しさん
:03/08/17 23:03
>>414
VC++.NET 2002は .h付きもサポートされてるよ。
で、その67%のシェアって、2003のシェアじゃないよな。
419
名前:
デフォルトの名無しさん
:03/08/17 23:06
.hつけなきゃいけない処理系って何?
420
名前:
デフォルトの名無しさん
:03/08/17 23:08
ttp://www.trickpalace.net/cgi-bin/cppll/enq.cgi?mode=enquete&number=5
母数が少ないからあんまりあてにはならんけど、
そんなに現状と激しい差はないと思われる。
421
名前:
デフォルトの名無しさん
:03/08/17 23:09
http://www.trickpalace.net/cgi-bin/cppll/enq.cgi?mode=enquete&number=5
422
名前:
デフォルトの名無しさん
:03/08/17 23:20
>>419
VC6。
あと、最近のバージョンなら大丈夫だと思うが CodeWarrior も。
423
名前:
デフォルトの名無しさん
:03/08/17 23:26
VC++6.0にiostreamとか入っているよ?
424
名前:
デフォルトの名無しさん
:03/08/17 23:31
stdio がアウト。( cstdio なら大丈夫 )
425
名前:
デフォルトの名無しさん
:03/08/17 23:31
ハードリンクも作れない低脳どもが
426
名前:
デフォルトの名無しさん
:03/08/17 23:33
あと付け加えとくと VC6 は cstdio にしても
標準関数が std 名前空間に入ってくれないから意味が無い。
427
名前:
デフォルトの名無しさん
:03/08/17 23:34
>>425
そんなもの必要ありませんがなにか?
428
名前:
デフォルトの名無しさん
:03/08/17 23:34
>>424
何それ? いやマジで。cstdioは知ってるぞ。
429
名前:
デフォルトの名無しさん
:03/08/17 23:38
// VCだとアウト
#include <stdio>
int main() {
printf("hoge\n");
return 0;
}
430
名前:
デフォルトの名無しさん
:03/08/17 23:38
とりあえず、「STLPortを入れて.hを抜いとく」のがいいんかな。
431
名前:
デフォルトの名無しさん
:03/08/17 23:41
VC7.1にSTLPort入れるとエラー出るよ
432
名前:
デフォルトの名無しさん
:03/08/17 23:42
>>430
STLportって printf とか C 言語のときからの標準関数も含んでるの?
以下ループ・・・
433
名前:
デフォルトの名無しさん
:03/08/17 23:48
>printf とか C 言語のときからの標準関数
は処理系依存の物が沢山あるからそういうことはないよ
処理系で用意されているオリジナルのヘッダを読み込むだけの
同名のヘッダは用意されているけど
434
名前:
デフォルトの名無しさん
:03/08/17 23:48
429 名前:デフォルトの名無しさん[sage] 投稿日:03/08/17 23:38
// VCだとアウト
#include <stdio>
int main() {
printf("hoge\n");
return 0;
}
435
名前:
デフォルトの名無しさん
:03/08/17 23:49
>>433
例えば stdio.h をインクルードしてるだけの stdio があるってことですか?
436
名前:
デフォルトの名無しさん
:03/08/17 23:51
>>435
stdio.hもcstdioもある
437
名前:
デフォルトの名無しさん
:03/08/17 23:54
>>436
そうなんだ、知らなかったよ。情報ありがとう。
でも
>>431
によると STLport を使う事で問題が
万事解決ってわけでもなさそうですね。
438
名前:
デフォルトの名無しさん
:03/08/17 23:55
>>429
> #include <stdio>
そりゃアウトだろう。
439
名前:
デフォルトの名無しさん
:03/08/18 00:00
初めて見たよ
440
名前:
デフォルトの名無しさん
:03/08/18 00:11
>>435
と
>>436
は、微妙に話がかみ合ってない。(cの一文字)
で、
>>424
と
>>429
は、無視でよろしいですか?
441
名前:
デフォルトの名無しさん
:03/08/18 00:20
>>422
デマはよせ。VC++ は 4.2 から <iostream> を持っとる。
>>440
> で、
>>424
と
>>429
は、無視でよろしいですか?
>>403
とかも無視でよろしいと思う。
442
名前:
デフォルトの名無しさん
:03/08/18 00:26
結局、
>>372
が諸悪の根源か?
443
名前:
デフォルトの名無しさん
:03/08/18 00:48
で、結局のところどういうことなの?
.h 付きだとダメな処理系は VC++.NET 2003 オンリーで、
.h 無しだとダメな処理系は?
444
名前:
デフォルトの名無しさん
:03/08/18 00:54
>>443
>.h 付きだとダメな処理系は VC++.NET 2003 オンリー
これが正しいわけだが。つーか規格嫁。
445
名前:
デフォルトの名無しさん
:03/08/18 00:57
>>444
なんだその噛み合ってないレスは
446
名前:
デフォルトの名無しさん
:03/08/18 00:58
>>444
規格も大切だが移植性の話してるんだから
現状がどうなっているかは重要。
規格にしたがったからって実際に現実の移植性が
いいかとは別問題。
447
名前:
デフォルトの名無しさん
:03/08/18 01:00
>>446
で、きみは.hつけるのかね?
448
名前:
デフォルトの名無しさん
:03/08/18 01:03
>>447
その参考にする為に訊いてるんだから
つけているかつけていないか別問題だろ。
頭悪いなぁ。
449
名前:
デフォルトの名無しさん
:03/08/18 01:07
>>448
規格は一つ。
現実問題は処理系の数だけある。
どっちに依るかは使う処理系によって自ずと決まろう。
450
名前:
デフォルトの名無しさん
:03/08/18 01:10
規格にすがる気持ちは無いけど、一定の拠り所はほしいよな。
451
名前:
デフォルトの名無しさん
:03/08/18 01:12
規格規格逝ってる香具師はANSIC++規格に100%準拠したコンパイラが出るまで、
C++を使わないで下さい。
452
名前:
デフォルトの名無しさん
:03/08/18 01:13
>>450
そうそう。規格通りに実装されてなければ意味をなさないし、
実際問題、まだ全てが規格通りに実装されるわけでもないんだし。
453
名前:
デフォルトの名無しさん
:03/08/18 01:14
移植性移植性逝ってる香具師はembedded系のC++コンパイラサブセットでも通るコードだけ書いて下さい。
454
名前:
デフォルトの名無しさん
:03/08/18 01:16
>>453
実際にそれを使う奴は他の処理系でも意識してコード書くだろ。
特に共通で使えそうなコードならなおさら。
455
名前:
デフォルトの名無しさん
:03/08/18 01:18
要するにだ、今の規格は現場のニーズを満たしていないと。現場のニーズは
規格化するにはあまりにも多岐にわたっていると。そういうことだな?
456
名前:
デフォルトの名無しさん
:03/08/18 01:19
拠り所が欲しい奴は↓に従え。
まず規格通り .h 無し。
エラーが出るようなら STLport を検討。
それでダメなら .h を足して、対応する std:: の使用を変更する。
このとき、移植性が必要なソースなら処理系で定義済みの
プリプロセッサシンボルで .h の追加、namespaceの変更をスイッチ可能にしておく。
それでだめなら諦めて実装を変える。
このとき、移植性が必要なソースなら処理系で定義済みの以下略
457
名前:
322
:03/08/18 01:20
プププ 流石低能ばかりがいるスレですね。
458
名前:
デフォルトの名無しさん
:03/08/18 01:21
>>457
また来やがったなw
459
名前:
デフォルトの名無しさん
:03/08/18 01:24
ttp://www.tietew.jp/cppll/archive/121
460
名前:
322
:03/08/18 02:19
ああっ、なんてレベルが高いスレッドなんだ。これじゃ誰もついていけない。
2ちゃんねるも捨てたもんじゃないな。まだこんなレベルが高いスレッドが
あるんだもんな。しかし、ここに書き込んでいる連中は相当なレベルの高さ
だよなぁ。これじゃ、こんなにレスがつくのも当たり前だよ。本当に322の
レベルは高いと思うけど、それについて行ける奴も凄いな。まったく尊敬
するよ。おれもみんなを見習ってレベルの高い人間になれるように精進する。
そして、みんなについて行けるような立派なプログラマになるよ。まだ見習い
だけど3ヶ月後の俺を見ていてくれよ。みんなをアッと言わせるプログラマに
なるからさ。その時まで、みんなもレベルが高いのを持続してくれよな。
ほんと、2ちゃんねるに来て幸せだよ、オレは幸せものだなぁ。
461
名前:
デフォルトの名無しさん
:03/08/18 02:22
>>460
長文オツカレー、だけどみんなもう飽きちゃってんだよねぇ…。
462
名前:
1
:03/08/18 02:29
//Basic.h
class Basic {
public:
int b;
Basic() {b=10;}
};
//C1.h
#include "Basic.h"
class C1 : public Basic {
public:
int cc1;
C1() {cc1 = 1;}
};
//C2.h
#include "Basic.h"
class C2 : public Basic {
public:
int cc2;
C2() {cc2 = 2;}
};
463
名前:
2
:03/08/18 02:29
//Main.cpp
#include <iostream>
#include "C1.h"
#include "C2.h"
using namespace std;
int main(int argc, char** argv) {
C1 c1;
C2 c2;
cout << "c1.cc1=" << c1.cc1<<"c1.b="<< c1.b;
cout << "c2.cc2=" << c2.cc2 <<"c2.b="<< c2.b;
return 0;
}
%c++ Main.cpp
In file included from C2.h:1,
from Main.cpp:3:
Basic.h:2: redefinition of `class Basic'
Basic.h:2: previous definition of `class Basic'
となってしまいます。どうしたらよいのでしょうか?
464
名前:
デフォルトの名無しさん
:03/08/18 02:31
とりあえずインクルードガード
465
名前:
322
:03/08/18 02:47
>>461
コピペにマジレスオツカレー、だけど俺も飽きてんだよねぇ・・・どうしよう・・・
466
名前:
デフォルトの名無しさん
:03/08/18 02:51
>>465
とりあえず、話を聞いてくれる友達を作れw
467
名前:
デフォルトの名無しさん
:03/08/18 03:10
>>464
できましたー。蟻が・。
こんなのに、何時間もかけてたなんて…鬱。
468
名前:
デフォルトの名無しさん
:03/08/18 12:31
標準では
ネットワークサポートしてないのでしょうか?(C or C++)
VCなのですが、sys/socket.hなどが見つかりません。
469
名前:
デフォルトの名無しさん
:03/08/18 12:33
>>468
Winsockなんてのがあるよ。でも、あまり期待しないでね。
470
名前:
デフォルトの名無しさん
:03/08/18 12:41
ネットワークは、標準にはならないと思うよ。
ネットワークが不要な環境や不可能な環境もあるわけで、
ネットワークがCやC++の標準になってしまうと、そういう環境では
非標準のコンパイラしか供給できなくなる。
471
名前:
デフォルトの名無しさん
:03/08/18 13:16
GUIは、標準にはならないと思うよ。
GUIが不要な環境や不可能な環境もあるわけで、
GUIがCやC++の標準になってしまうと、そういう環境では
非標準のコンパイラしか供給できなくなる。
472
名前:
デフォルトの名無しさん
:03/08/18 13:47
STLは、標準にはならないと思うよ。
STLが不要な環境や不可能な環境もあるわけで、
STLがCやC++の標準になってしまうと、そういう環境では
非標準のコンパイラしか供給できなくなる。
473
名前:
デフォルトの名無しさん
:03/08/18 14:35
>>469-470
とりあえずOSで用意されたものを使うことにしました。
ありがとうございました。
474
名前:
デフォルトの名無しさん
:03/08/18 14:46
一気にレスを読んで、例外に関する話が出てきたけど、
http://www.cuj.com/documents/s=8250/cujcexp2106alexandr/
で紹介されている Enforce を使ってみてはどうかと思う。
実際に使ってみると Log とる時にすごく便利。
何気に std::runtime_error を std::string で実装している環境向けなので、
STLport では使えなかったりするが。
475
名前:
デフォルトの名無しさん
:03/08/18 17:44
>424
>429
それは、c++の規格通り。
476
名前:
デフォルトの名無しさん
:03/08/18 17:54
(unsigned int)aは、
coutで変数を表示したりする時に一時的に内容をint型に変更するって理解で合ってますか?
477
名前:
デフォルトの名無しさん
:03/08/18 18:04
aの型は変わらない
478
名前:
デフォルトの名無しさん
:03/08/18 18:35
>>476
a を usigned int として解釈する、
もしくは a から usigned int の一時変数を作成することを意味する。
479
名前:
デフォルトの名無しさん
:03/08/18 18:55
VC++で.h付きのと.h無しのとを混ぜるのはやめような。
どっちをincludeするかで使われるライブラリが異なる。
480
名前:
デフォルトの名無しさん
:03/08/18 20:09
>>476
a の値を unsigned int に変換した値を得るだけ。
a 自身に変化は無い。
-a が a の値の符号を逆転させた値を得るだけで
a 自身に変化が無いのと同じように。
481
名前:
デフォルトの名無しさん
:03/08/18 22:24
Javaをあまり知らないので聞きたいのですが、
C++のSTLみたいなgeneric programmingってJavaでそのまま使えます?
482
名前:
デフォルトの名無しさん
:03/08/18 22:34
>>481
ダウンキャストの嵐でよければ、現状でもそれなりには、
container/iterator/algorithm ... みたいなものはある。
けど、もっとマシな Generics は JDK 1.5 に期待せよ。
http://objectclub.esm.co.jp/JavaGenerics/
483
名前:
デフォルトの名無しさん
:03/08/18 22:39
>>482
ありがとう。かなり参考になった。
484
名前:
◆uDXNh2HK82
:03/08/18 23:41
Microsoft Visual C++ .NETとBorland C++Builder 6のどちらを買ったほうがいいですか?
使用目的はC++の勉強や趣味にしたいと思っていますが、本格的なアプリケーション作成も十分出来るなどの点を踏まえて教えて下さい。
485
名前:
デフォルトの名無しさん
:03/08/18 23:56
>>484
VC .NET 2003 にしとけ。
Borland はもう結構長いことバージョンアップしてないし。
486
名前:
デフォルトの名無しさん
:03/08/19 00:08
>>484
.NET Frameworkかcygwinでまずは遊ぶのがいいよ。
金出したからといってプログラミングができるようになるわけじゃない。
書籍に金をかける方がいい。
487
名前:
デフォルトの名無しさん
:03/08/19 00:13
IDE無しじゃ学習効率は大幅にダウンする。
書籍以前の問題だな。
488
名前:
◆uDXNh2HK82
:03/08/19 00:30
>>484
です。
C++の勉強と書きましたが、GUIの勉強に近いです。
C++の書籍は購入し、Linuxも持っているので標準入出力、反復、条件分岐、ポインタなどはある程度出来ます。
GUIをやろうとするとなんか調子が悪いし、Windowsなどでフリーで提供されているソフトよりもわかりづらい部分もあるので、Windowsでの開発環境を買ってみたいと思いました。
WindowsのAPIも利用したいです。
でもCUIならgccはとてもいいです。
489
名前:
デフォルトの名無しさん
:03/08/19 00:35
抽象クラスのコンストラクタはpublicでOKでしょうか?
490
名前:
デフォルトの名無しさん
:03/08/19 00:40
>>489
純粋仮想関数をもってないならprotectedにしとくといいよ。
491
名前:
デフォルトの名無しさん
:03/08/19 00:40
privateにしていいの?
492
名前:
489
:03/08/19 00:46
えと、抽象クラスということで、pure virtualありです。
> 純粋仮想関数をもってないならprotected
は何故なのでしょうか? おしえていただけると嬉しいです。
493
名前:
デフォルトの名無しさん
:03/08/19 00:52
>>492
Abstract not_implemented;
って感じに抽象クラスのインスタンスを作ってもエラーにならないから。
494
名前:
489
:03/08/19 00:54
ああ、なるほど。サブクラスでoverrideしなくてもいいけど、
抽象クラスそのものをインスタンス化してもらっちゃ嫌だと
いうことですね。ありがとうございます。
495
名前:
デフォルトの名無しさん
:03/08/19 01:23
>>491
全然OK。
そういう設計もある。
496
名前:
デフォルトの名無しさん
:03/08/19 03:20
教えてください。
int i=15 * 6 * 0.7; // 62
int i=15 * 0.7 * 6; // 63
で前者は62に後者は63になるのですが
これは一体なんなんでしょうか?
497
名前:
デフォルトの名無しさん
:03/08/19 04:02
C++に関係あるんでしょうか
498
名前:
デフォルトの名無しさん
:03/08/19 04:05
http://www.google.co.jp/search?q=%E6%B5%AE%E5%8B%95%E5%B0%8F%E6%95%B0+%E8%AA%A4%E5%B7%AE&ie=UTF-8&oe=UTF-8&hl=ja&lr=lang_ja
http://www.google.co.jp/search?num=30&hl=ja&ie=UTF-8&oe=UTF-8&c2coff=1&q=%E6%BC%94%E7%AE%97%E5%AD%90+%E5%84%AA%E5%85%88%E9%A0%86%E4%BD%8D+%E7%B5%90%E5%90%88&lr=lang_ja
499
名前:
496
:03/08/19 04:28
>>498
ありがとうTT
500
名前:
デフォルトの名無しさん
:03/08/19 06:40
質問です。
プログラムの実行中に、関数を動的に書き換えたいと考えています。
そこで、オリジナルの関数を宣言した時、
その関数のポインタを得ることは出来ますが
関数の終端を得るにはどうすればよいでしょうか?
(この「終端」はアセンブラ命令でいうretの位置だと捉えてください)
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.