1 名前:デフォルトの名無しさん mailto:sage [2007/05/06(日) 15:29:45 ] エスケープシーケンスやWin32APIなどの環境依存な物でもOK。 ただしその場合、質問者は必ず、環境を書きましょう。 ※sageは禁止です。 【前スレ】 【初心者歓迎】C/C++室 Ver.36【環境依存OK】 pc11.2ch.net/test/read.cgi/tech/1175436073/ 【アップローダー】(質問が長い時はココ使うと便利) kansai2channeler.hp.infoseek.co.jp/cgi-bin/joyful/joyful.htm
463 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 06:22:51 ] うーむ・・こんなにも差が出るもんなんやね・・ アルゴリズムの大切さをあらためて実感した。
464 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 07:48:37 ] >>462 中学で習うよ・・・
465 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 08:07:40 ] >>462 約数の和 例 60 の場合 60= 2^2 * 3^1 * 5^1 (60の約数の和)=(2^0 + 2^1 + 2^2)*(3^0 + 3^1)*(5^0 + 5^1) =(1+2+4)*(1+3)*(1+5)=168 >>427 のアルゴリズム 60=2^2*15 (60の約数の和)=(15の約数の和)*(2^0 + 2^1 + 2^2) =(15の約数の和)*(2^3-1)/(2-1) >>428 のアルゴリズム 60=2^2*15 (60の約数の和)=(15の約数の和)*(2^0 + 2^1 + 2^2) =(15の約数の和)*(2^0 + 2^1) + (15の約数の和)*2^2 =(30の約数の和) + (15の約数の和)*2^2
466 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 12:56:16 ] C++で値クラスを作る際に、Cスタイルの構造体を選択した場合、 コンストラクタのオーバーロード (引数なしでメンバは全てゼロ、または指定引数で初期化といった動作をさせるため) すること、さらに考えを進めて振る舞い、つまりメンバ関数を持たせることって良くないんでしょうか?
467 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:02:16 ] 凸包を調べるためにQhullを使ってるんだけど、頂点配列points[i]から 凸包の外周要素に使われた点の添字を抜き出す方法って無い? 色々やってみたけど、外周要素の点の座標しかもってこれないです。
468 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:03:45 ] 構造体にメンバ関数を持たせることに対する文法的な質問? それとも比較的どうでもいいコーディングスタイル的な質問? 前者なら、文法上可能。 classとstructはデフォルトのアクセス修飾が異なるだけでなんら問題なし。 後者なら、好きにすれば?としか言いようがない。
469 名前:デフォルトの名無しさん [2007/05/22(火) 13:15:52 ] |は演算子ですか?こういう使い方みるんですが a(x|y,z)
470 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:16:26 ] 入門書に書いてあるような事を聞かない。
471 名前:デフォルトの名無しさん [2007/05/22(火) 13:18:57 ] じゃあスレタイに初心者歓迎なんてつけないでください
472 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:26:26 ] 読んでも分からない事ならいいが、 読めば誰でも必ず分かる事を聞かれても困る。
473 名前:デフォルトの名無しさん [2007/05/22(火) 13:28:11 ] 1か0かって書いてたんで変数1か0しか無意味ということですか?
474 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:28:27 ] 演算子ですよ
475 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:29:34 ] x|y ビットOR x||y 論理演算OR
476 名前:デフォルトの名無しさん [2007/05/22(火) 13:30:59 ] ビットOR の使いかたがわかりません
477 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:33:47 ] 各ビットでORが必要になったら使う 必要でなかったら使わない
478 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:34:01 ] y==11001010 x==00110101 z=x|y z==11111111
479 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:34:09 ] たとえば a = 99|137;//aには235が代入される 01100011 (99) 10001001 (137) ---------ビットOR 11101011 (235)
480 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:41:08 ] こんなのにわざわざ… おまいら親切だな >>471 モノには順序(ry
481 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 13:59:50 ] うん、俺今ちょっと気分いいんだ。
482 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 14:06:12 ] 惚れました(*´ェ`*)
483 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 14:15:46 ] 誰かcygwinでwhileを使った九九のプログラムの作り方を教えてくれませんか(´д`)
484 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 14:17:27 ] 宿題は自分で。
485 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 16:34:09 ] www.uploda.org/uporg818968.txt.html リスト云々覚えようかとこんなの書いてみたんですが、下から10行目辺りのreallocの所で、強制終了してしまいます。 どこが悪いんでしょうか・・・・誰か教えて下さい
486 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 16:41:48 ] ポインタを初期化もして無いくせにrealloc使うな。 どうしても使いたきゃNULLで初期化してから使え。
487 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 16:44:04 ] つーか、 struct late data[20];//とりあえず、20個分 struct late *memp=data;//↑のデータの最初のアドレスをmempに 配列のアドレスで初期化しとる。 初期化しなければ、グローバル変数だからNULLが入るんでうまくうごいたのにね。
488 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 16:47:11 ] reallocの動作を勘違いしてる
489 名前:485 mailto:sage [2007/05/22(火) 16:52:22 ] む・・・良く分かんない・・・・・・orz reallocの一つ目の引数には、中身が入ったポインタを指定してはいけないって事ですか?
490 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 16:54:10 ] >>489 一つ目の引数は必ずmallocやreallocで取得したポインタ(か、NULL) 同じ位置で指定したサイズが取得できないと、別の場所でallocしなおして 最初のやつはfreeされる。
491 名前:485 mailto:sage [2007/05/22(火) 16:57:11 ] >>490 あ、分かりました。 struct late data[20];//とりあえず、30個分 struct late *memp=data;//↑のデータの最初のアドレスをmempに ↑の部分を struct late *memp; memp = (struct late*)malloc((sizeof(struct late)) * 20); こうすればいいんですよね?
492 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 16:59:54 ] >>491 まあそういうこと。 そして、reallocするということは、それが常に同じアドレスとは限らない。
493 名前:485 mailto:sage [2007/05/22(火) 17:01:35 ] >>492 ありがとうございました。物凄く勘違いしてたっぽいですねorz 勉強になりました。
494 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 17:09:37 ] >>466 C++/CLIでのことだったらそっちのスレで聞いたほうが的確な助言がくると思うぞ。
495 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 21:28:41 ] www.heat-devil.com/up/src/No0300.zip 非常に初心者な質問なのですが、 ファイル分割の勉強中で↑な感じで3つに分けて borland C/C++コンパイラでbcc32 a.cpp hoge.cpp hoge.hとやったら 『 hoge.h 1: 宣言の構文エラー』と出るのですが、 hoge.hのどこが間違っているのか分からないのでどなたか教えてくださいorz
496 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 21:50:28 ] >>495 なんで hoge.h がエラー扱いされてしまうのかは俺も少々不可解だけど、 bcc32 a.cpp hoge.cpp でおk。hoge.h は a.cpp と hoge.cpp から include される対象に 過ぎないからコンパイルする必要は無し。
497 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 21:57:29 ] .hをコンパイルすると、C++じゃなくて、Cとして コンパイルされるんじゃないの。
498 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 21:59:58 ] ああ、なるほど。
499 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 22:16:23 ] >>496-497 うわぁああ出来ました!! そうか、iostreamとかもコンパイルの時書かないですしね>< 分割するの初めてだったからファイルの書き方間違っているのかと 今日一日中ネットや本で調べたけど分からなかったのでホントに嬉しいです・・・(;△;) まさかそっちのやり方が間違っていたとは。 ありがとう、本当にありがとうございます><
500 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 22:18:59 ] (;△;)
501 名前:デフォルトの名無しさん [2007/05/22(火) 22:49:01 ] オーム社「C言語によるプログラミング[応用編]」(第一版) サンプルプログラム sample2 myform.c をそのまま写して、コンパイルしたところエラーがでました。 環境は、 gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21) です。 エラー出力は、 myform.c:57: error: two or more data types in declaration specifiers myform.c:104: error: conflicting types for 。GetArg「 myform.c:57: error: previous declaration of 。GetArg「 was here myform.c:256: error: conflicting types for 。LineAdd「 myform.c:58: error: previous declaration of 。LineAdd「 was here int GetArg( int, char *[], int *, int *, int *, int *, char [] ); int GetArg( int argc, char *argv[], int *column, /* カラム数 */ int *line, /* 行数 */ int *upper, /* 上余白行数 */ int *left, /* 左余白行数 */ char file[] /* 入力ファイル */ ) int *LineAdd( char *, char *, int ); char *LineAdd( char *to_buff, char *from_buff, int num )
502 名前:501 [2007/05/22(火) 22:51:35 ] このエラーの原因を知りたいのですが、 ヒントやポインタをおねがいします。 一番下のこの部分は無視してください。 int *LineAdd( char *, char *, int ); char *LineAdd( char *to_buff, char *from_buff, int num ) _
503 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 22:52:40 ] どこが57行目?
504 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 22:56:31 ] >>501 セミコロン
505 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 23:02:57 ] int GetArg( int, char *[], int *, int *, int *, int *, char [] ); int GetArg( int argc, char *argv[], int *column, /* カラム数 */ int *line, /* 行数 */ int *upper, /* 上余白行数 */ int *left, /* 左余白行数 */ char file[] /* 入力ファイル */ ){ return 0; } とりあえず、gcc 3.4.6にかけてみたけど、エラーなんて でなかったぜよ。
506 名前:501 [2007/05/22(火) 23:03:33 ] 57行目 int GetArg( int, char *[], int *, int *, int *, int *, char [] ); 104行目 int GetArg( int argc, char *argv[], int *column, /* カラム数 */ int *line, /* 行数 */ int *upper, /* 上余白行数 */ int *left, /* 左余白行数 */ char file[] /* 入力ファイル */ ) です。 myform.c:256: error: conflicting types for 。LineAdd「 myform.c:58: error: previous declaration of 。LineAdd「 was here は無視してください。
507 名前:501 [2007/05/22(火) 23:06:50 ] >>504 int GetArg( int, char *[], int *, int *, int *, int *, char [] ); ^^^ このセミコロンのことでしょうか? >>505 わざわざコンパイルしてくださって、ありがとうございます。 お手数かけてすいません。 これから、自分の環境でその部分だけコンパイルしてみます。
508 名前:501 [2007/05/22(火) 23:11:45 ] >>505 をコンパイルしたところ、自分の環境でもエラーはでませんでした。 ほかに GetArg関数に関係があるところは、メイン関数でよびだしたこの場所だと思います。 なにかまちがえたことをしているでしょうか。 int main ( int argc , char *argv[] ) { int column, line, upper, left; char file[SMALL_BUFF_SIZE]; int result; /* main引数取得 */ result = GetArg( argc, argv, &column, &line, &upper, &left, file );
509 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 23:46:33 ] 「基本クラスにあるprotectedなメンバ関数を、 派生クラスで名前も処理も変えず、publicに昇格する」 というのは、 class base { protected: int hoge() { ... } }; class derived : public base { public: int hoge() { return this->base::hoge(); } }; こんな感じになりますか? それとも、もっと簡単にできますか?
510 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 00:04:48 ] 名前も処理も変えないんだったらオーバーライドする意味無いやん さらに言えばprotectedにする意味無いやんhoge()はpublicにすりゃいいやん って思ったんですがどうでしょう?
511 名前:501 [2007/05/23(水) 00:09:27 ] エラーの原因がわかりました。 57行目の int GetArg( int, char *[], int *, int *, int *, int *, char [] ); の前にある、 enum { NORMAL_END, /* 0 */ USAGE_ERROR, /* 1 */ FILE_ERROR /* 2 */ }; ^^^^ このセミコロンが欠けていました。 >>504 さんのいうとおりでした。 おさわがせいたしまして、どうもすいませんでした。 レスくださった方たち、ありがとうございました。
512 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 00:10:16 ] >>510 尤もだ。
513 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 00:11:15 ] using base::hoge; でよくね?
514 名前:デフォルトの名無しさん [2007/05/23(水) 12:47:58 ] C++初心者で申し訳ないのですが、質問させてください。 ↓のページのSFMTを、C++プログラムから利用したいのですがうまくいきません。 ttp://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/ ttp://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/howto-compile.html Linux上でg++(ver4.20)でコンパイルしてみると、sample2-1や2-2が詰まります。 ヘッダでinline宣言してある関数が"xxx is used but never defined"と警告され、 リンク時にエラーになります。 sample2-3のようにcファイルをincludeする、またはgccならばコンパイルできますが c++のソースから呼び出さねばならない場合、どうすればよいのでしょうか? c++用ライブラリ等も紹介されてますが、呼び出し側プログラムの書き換えを最小限に したいので、inline関連のオプション追加で解決してくれるなら、と思っています。 よろしくお願いします。
515 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:03:31 ] >>514 よく見てないけどこんなのは? extern "C" { #include "SFMT.h" }
516 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:33:50 ] #include<iostream> #inlucde<iostream.h> C++でのこの2つって何か違いがあるんですか?
517 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:41:38 ] はい。
518 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:41:54 ] 後者は過去の遺産。
519 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:49:38 ] 積極的に.h無しが推奨される理由があるなら教えて頂きたいです>< Cの勉強始めた時から.h有りで書いていて慣れていたので。
520 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:53:59 ] 規格に書いてあるから。
521 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:55:57 ] 違いがあるから
522 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 13:56:20 ] iostream.h の方は std 名前空間に入ってないから。
523 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 14:21:06 ] >>516 iostream.hの方が入出力が速い処理系があります(VC6とかVC6とかVC6とか)。 でも既に古いC++です。
524 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 14:36:13 ] >>522 し、正直よく分からないけどあなた様のレスのコピペを保存して 賢くなったら読み返して理解してみます>< >>523 ありがとうございます。 新しい処理系だと.h無しの方が処理が速いんですね。 参考になりました><
525 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 15:04:09 ] >>524 >518とか>520も無視すんなや。ちゃんとメモしとき。 それからついでに。 >新しい処理系だと.h無しの方が処理が速いんですね。 誰もそんなこと書いていない。
526 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 15:18:03 ] >>525 いや、2chでよくあるYES/NOレスみたいな感じで スルーか微妙だったから具体的に教えてくれた人にレスしたんだ。 もし気を悪くしたらごめんです。 それと昔は.h有りの方が速かったけど今は>>522 さんが言った理由な感じで .h無しの方が良いから処理速度は.h無しでも変わらなくなったってことかな? なんだか分かったような分かってないようなだけど突っ込んでくれてありがとう><
527 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 15:40:43 ] 処理速度なんて関係ない。 要は.h有りは古い規格で、今は.h無しが標準ということ。 実際VC++では2003あたりから標準に則ってiostream.hは提供されなくなった。
528 名前:デフォルトの名無しさん [2007/05/23(水) 15:49:52 ] 礼儀のなってない自称初心者ほど嫌われるものはない。
529 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 16:10:08 ] >>527 つまりその名前空間云々で.h無しの方が良くて、 その規格に合わせて処理系も変わってきたから.h無しが推奨されると。 という把握をしてみました。 とりあえず名前空間云々を可及的速やかに勉強してみます>< >>528 うん、なんだかごめんです。 「規格だから」「過去の遺産」「違いがあるから」的なのじゃなくて 「どうしてそういう規格でどう違いがあって」的な理由を聞きたくて 「うん」とか表面的な答えの人は2chではあまりちゃんと答えてくれない 経験則から他の人にだけレスしてしまった。 気を悪くしていたら反省している。
530 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 16:19:34 ] 他の板には余りないこの板の特徴かも知れんが、 「答えだけ書くから後は自分で調べろ」的なパターンかもね。 兎にも角にも>529は「書いてあるものを読み」、「書かれてないことを読まない」ようにしないとな。
531 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 16:33:20 ] 自分で答えを決め付けてから読むから 回答者の意図なんて全然読み取れてない
532 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 16:45:07 ] >>531 こんだけ反省してるって言ってるんだから、 流石にいい加減しつこいというか。 質問者だけにやたら厳しいが仮にも初心者歓迎謳ってるんだから 回答者にもある程度誘導的な姿勢は必要だとも思うし。
533 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 16:46:04 ] いつまで苛めてんだ。カルシウム摂れ。
534 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 16:47:36 ] いつまでもいいんだ。カルシウムくれ。
535 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 16:49:06 ] 煮干が美味いんだ。昆布でダシは邪道
536 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 17:07:43 ] 質問です 最近C++(つかプログラミング)を始めた者です 入門書「やさしいC++」を読んで、一通り簡単な文法とかは理解したんですけど、 この板に出てくるソースによくある、関数の種類とかについては全く分かりません。 そろそろコンソールアプリケーションじゃなくて、ウインドウのソフトも作ってみたいと思うんですが、 どうやら、関数をいっぱい知ってなきゃ作れないらしいですね。 これから自分はどんな本,どんなサイトを見て勉強していくべきなのでしょうか?
537 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 17:46:03 ] やれやれ。そろそろネタばらしでもしてやるか。 昔はインクルードするものと言ったらヘッダーファイルで当然だったのだが 果たしてヘッダーファイルが実在する必要があるのか、 それを規格で要求するべきなのかと言う議論があった。 そのためにいかにもファイルの拡張子っぽい.hをなくし、 コンパイラは標準ライブラリのヘッダーをインクルードしている部分を 通常のインクルード処理ではなく、対応する標準関数その他を有効にする 単なるスイッチとして使うことを許すようにした。
538 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 17:55:49 ] >>536 MSDN
539 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 18:01:54 ] 質問です。 typedef float Vector3[3]; なんてtypedefをしたんだけど。 vector<Vector3> vec; vec.resize(10); が通らない。 vector<float> vec; vec.resize(10); なら通るんだけど。 どうして?
540 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 18:03:51 ] >>539 配列にはそのまま代入ができないので、無理。
541 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 19:27:17 ] vectorが内部で何やってるか考えてみようぜ
542 名前:デフォルトの名無しさん [2007/05/23(水) 20:54:27 ] ここで聞いて良いのか分からないのですが、間違っていたらすみませんが誘導お願いします VC++の初心者質問なんですがCOMインターフェイス使って#import する場合 例えば、エクセルなんかの場合 ##import "C:\Program Files\Microsoft Office\Office\excel9.olb" rename("DialogBox", "DialogBoxXL") rename("RGB", "RBGXL") rename("DocumentProperties", "DocumentPropertiesXL") no_dual_interfaces とかやるんですが、これはビルドしたときにexeに組み込まれちゃうんでしょうか? もしくはexeが実行したときにオブジェクトライブラリが読み込まれるのでしょうか?
543 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 21:08:11 ] >>542 excel9.olbの内容はコンパイル時にのみ参照される。 実行時にexcel9.olbは不要。
544 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 21:25:18 ] >>539 vector<vector<float> > vec; でいいじゃん resize()は要素分行う必要があるので面倒だけど
545 名前:デフォルトの名無しさん [2007/05/23(水) 21:29:35 ] >>543 ありがとうございます
546 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 21:39:56 ] >>544 struct Vector3 { float vec[3]; }; vector<Vector3> vec; の方がいいんじゃないか
547 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 21:54:57 ] >>539 struct Vector3 { float a; float b; float c; }; vector<Vector3> vec;
548 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 22:01:34 ] abcよりもxyzのほうが的確だと思う
549 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 22:03:38 ] そんなことはどうでもいいと思う
550 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 22:18:21 ] M$のABC構造体とかふざけた名前のやつを思い出した
551 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 22:21:55 ] フォントの幅だっけ?
552 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 09:39:23 ] ABCD包囲網だな。CとDがうぜえ
553 名前:デフォルトの名無しさん [2007/05/24(木) 19:01:31 ] VC++2003でexeのプロジェクトを別のexeで参照設定する事はできますか??
554 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:30:29 ] --------------------------- Microsoft Development Environment --------------------------- '○×△□.exe' への参照を追加できませんでした。 これは有効なアセンブリまたは COM コンポーネントではありません。拡張子 'dll' を持つアセンブリまたは COM コンポーネントのみを参照することができます。ファイルがアクセス可能で、有効な アセンブリまたは COM コンポーネントであることを確認してください。 --------------------------- OK ---------------------------
555 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:52:25 ] COMコンポーネントじゃないので、できませんという事ですね。 ありがとうございます><
556 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:55:02 ] ( ゚д゚)ポカーン
557 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:58:21 ] >>556 >>555 とは別人だけど、違うの? COMコンポーネントかDLLしか参照できないってことじゃないの……?
558 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 20:46:00 ] VC++2003で exeのプロジェクト を 別のexeで 参照設定する事 謎が多いな。 make の依存関係だけなのか、 別のexe が、元 exe をリンケージするのか
559 名前:557 mailto:sage [2007/05/24(木) 21:02:04 ] >>558 それは自分も思った。 ShellExecuteとかそのたぐいでいいじゃんてね。 でも、exeの参照の可否と、その有用性はとりあえず関係なくね?
560 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 21:19:31 ] >>557 exeでも参照できるよ .NET Frameworkならね
561 名前:560 mailto:sage [2007/05/24(木) 21:22:02 ] ていうかVC初心者スレ池
562 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 23:26:48 ] 「構造体とクラスは無関係」という人をよく見かけるけど、 構造体からヒントを得て、クラスという概念を作ったわけではないの? 構造体使ってて、あー、こういう風にしてーなー、と思ったところを、 クラスという形で実現したのであれば、 無関係ってちと言い過ぎじゃないかなー、とか思うんだけど。
563 名前:デフォルトの名無しさん [2007/05/24(木) 23:29:18 ] switch(event) { case1: foo; case2: bar; default: ←100行目 } if( !p1) { ・・・ GOTO Test; Test: ←100行目 } gcc version 4.1.2 で、 上のように、default: や Test: の後が空行のまま } がくると、次のようなエラーがでます。 handle.c:100: error: label at end of compound statement これは仕様なのでしょうか? default: は消し、 Test: は {}の外にうつして回避したのですが、それで正しいでしょうか。 アドバイス、よろしくお願いします。