***すれ立てるまでもない質問はここで 第8刷***
>>906 char ptr1[100], *ptr2;
ptr2 = "hello";
strcpy(ptr1, ptr2);
908 :
デフォルトの名無しさん:02/01/31 17:21
>>907
それやったんですけど、エラーは出ないけど出来ませんでした。
909 :
デフォルトの名無しさん:02/01/31 17:24
>>908 問題ないはずだけどなぁ。
「出来ない」ってのは、どういう結果を期待していて、どうできなかったの?
910 :
デフォルトの名無しさん:02/01/31 17:28
エラーは出ないんですけどコンパイルすると駄目ってなるんです。
ディバグしてもそこの部分でストップしちゃうんですよね。
何か間違ってるのかな~。
>>907ではptr1はポインタじゃなくてchar型配列になってるんだけど、
その違いは分かってるよね?
912 :
デフォルトの名無しさん:02/01/31 17:32
>>907 これって
char *ptr1 = new char[100];
char *ptr2;
ptr2 = "hello";
strcpy(ptr1, ptr2)
と一緒ですよね?
914 :
はじめましてこ:02/01/31 17:36
>>905 えぇ!そうだったんですか
IPアドレス等その他ネットワーク関係の
データを収集する為にほしかったんです。
では,どうやったら手に入るのでしょうか?
915 :
デフォルトの名無しさん:02/01/31 17:36
>>912 違うけど、この問題の場合は同じと考えてもいいよ。
916 :
デフォルトの名無しさん:02/01/31 17:39
>>915 それじゃやっぱり出来ませんでした。
もう一回ちょっとやってみます。
>>925 次のスレをたてるように
ちなみに次のスレは 第10刷なので間違えないようにね
918 :
デフォルトの名無しさん:02/01/31 17:44
>>915 簡単のでやったら出来ました。
って事は俺のが何処か間違ってるんだな。
助けて下さった人どうもありがとうございました。
ちょっと自分で頑張ってみてそれでも駄目な場合また聞きます。
>>893 現時点での解決方法じゃないけど、この手の問題は現在「スマートに書けんのか」と
研究されていて AOP (アスペクト指向プログラミング) という方法論が出てきてる。
AspectJ とか調べて見ると面白いかも。
>>896 どっちも完全ではないけど、私はこんな感じで対処してます。
1 なるべく例外を投げるような機能を個別にクラスに切り出して、コンストラクタ内部では
なくコンストラクタの初期化リストで扱うようにする。
class Foo
{
Bar bar_;
XXX xxx_;
public:
Foo() : bar_(パラメタ), xxx_(パラメタ)
{}
};
初期化リストで初期化した分に関しては、途中で例外が投げられてもデストラクタが
呼ばれるから。
2 コンストラクタ内部でスマートポインタを使って一時オブジェクトを保持しておく。
class Foo
{
CComPtr<IDirectDraw7> dd_;
CComPtr<IDirectDrawSurface7> primarySurface_;
public:
Foo()
{
CComPtr<IDirectDraw7> dd;
CComPtr<IDirectDrawSurface7> primarySurface;
// いろいろ初期化
// 全部終わったら、メンバ変数に代入
dd_ = dd;
primarySurface_ = primarySurface;
}
};
コンストラクタ内部で例外が投げられた場合には、スマートポインタがデストラクタを
呼ぶので問題なし。最後まで行ったらメンバ変数に所有権が移るので、デストラクタ
は呼ばれない。
920 :
デフォルトの名無しさん:02/01/31 19:29
>914
Windowsなら、ふつーwinsockだろが。
921 :
デフォルトの名無しさん:02/01/31 19:56
Windowsでシリアル通信を行っているのですが、2000では通信できるけれども
95やMeではできないということが発覚しました。
CreateFileして、非同期でWaitForSingleObjectを用いてリード・ライトを
待っています。
どのような原因が考えられるでしょうか?
>>919 ふむ。なるほど。
1は知らなかった。2は上手いてやね。スマートポインタマンセー。
で、ですね。
親クラスのコンストラクタ内で、子のvptrに変わってない問題は
なんとかならないのでしょうか・・・。
結局、”生成時にかならず呼ぶことにする”共通の初期化メソッド用意しておくしかないのかな。
迷えるDel厨に愛の手を。
思ったけどこの辺ってC++Builderでどうやってるかみたらいいのかもしれんな・・・。
gethostname(buf);
printf("%s\n", inet_ntoa(gethostbyname(buf)->h_addr_list[0]));
>>916 strdup()/_strdup() は楽で(・∀・)YO!
925 :
デフォルトの名無しさん:02/01/31 23:31
>>876 0:00:00 → 00:00:00
で、うまくいくハズ。
Linuxでmalloc使ってやってた時は、
vtx = malloc(sizeof(int[3])*pc);
としていたんですけど、Windowsではエラー。
vtx = (int(*)[3]) malloc(sizeof(int[3])*pc);
だとコンパイルは通るけれども確保できないし・・・。
誰かご教授下さい。
917 名前:デフォルトの名無しさん 投稿日:02/01/31 17:41
>>925 次のスレをたてるように
ちなみに次のスレは 第10刷なので間違えないようにね
SQLの書き方が良くわかんないのです。
次のようなテーブルがあったとします。
create table neko ( -- 猫テーブル
name varchar2(20), -- 猫の名前
hige integer -- ひげの数
);
このテーブルから、ひげの数が最大の猫の名前を取得したいのです。
とりあえず思いついたSQL文は
SELECT name
FROM neko
WHERE hige in (
SELECT max(hige)
FROM neko
)
でも、高々こんな処理に副参照なんて使いたくないし、
普通どうかくのでしょう?
さげちゃった!あげあげ
>>928 (´-`).。oO( SELECT TOP )
(´-`).。oO(WinでGUIと、FreeBSDでGUIってどっちが楽なんだろう?)
932 :
デフォルトの名無しさん:02/02/01 11:18
あの~くだらないことなんですが。
NTカーネルのページプールメモリのことはリソースって言っちゃっていいんでしょうか。
コンピュータ用語一般の意味から言えば
同時使用できなくて(あるいは制限があって)有限のものは
全てリソースだ。
Winのときはリソース領域と区別するために
断りを入れる必要があるが。
>>930 ありがとう!でも、具体的にどうやればいいのかわかんない...
ちなみに当方の環境は、
SolarisのOracle8i + sqlplus です。
はふー。
>>945 次のスレをたてるように
ちなみに次のスレは 第10刷なので間違えないようにね
>>933 ありがとうございます。
ページプールがなくなったときに警告出したいんだけど、うちのハゲ部長が
なんとなく納得するにはリソースとか言っちゃっておけたほうが楽でいいなと思いまして。。
938 :
デフォルトの名無しさん :02/02/01 12:56
C言語はもう時代遅れですか?
939 :
デフォルトの名無しさん:02/02/01 13:13
ギミックをいじりたいのですがいいソフトはありますか?
940 :
デフォルトの名無しさん:02/02/01 13:14
VC6で開発してるんですけど、ある処理をライブラリ化しようと思ってます。
objファイル、Staticなlib、DLL、どの形式で配布すれば解析しづらいですか?
逆アセのスキルがあればどれでも同じなんだろうけど。おねがいします。
942 :
デフォルトの名無しさん:02/02/01 13:23
>>926 その vtx ってのはどう宣言してるんだ?
943 :
デフォルトの名無しさん:02/02/01 13:24
>逆アセのスキルがあればどれでも同じなんだろうけど。
逆アセ無しにどうやって解析するんだ?
>>940 ソース形式以外であれば解析しづらいです
放置されちゃった...まぁしかたないか。
埋め立てますが、何か?
埋め立てますが、何か?
埋め立てますが、何か?
952 :
デフォルトの名無しさん:02/03/14 10:11
富士通のフォートランって扱える配列の次元数上限は
いくらですか? 知っている人教えてください。
(´-`).。oO(開発環境次第だから何とも言えないような・・・・)
(´-`).。oO(953は
>>931向けね・・・・)
電波を受信するにはどうしたらいいですか?
瑠璃子さんとHしてください。
ここで選択肢をまちがえると、
bad endですので注意して。