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

C++Builder相談室 Part4

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
C++Builderに関する質問・回答や議論等を行う相談室スレッド。
過去スレ・関連サイトは>>2-4あたり。
0754デフォルトの名無しさんNGNG
>>752
スレ違いだけどな

asoko:;
goto    asoko;

これをプログラムで判断できない訳ね。へーあっそう。
0755デフォルトの名無しさんNGNG
>>754 まあまあ、そうつっかからんで…(^^;
754のは無限ループの可能性しかないわけで一般的ではない、
というか、無限ループの可能性しかないかどうかをプログラムで
判定することは可能だ、ということですわなぁ。
しかしこれでは質問に素直に答えてはいない。

>>752
だが、754は逆説的にであるが、答えを出してくれているぞ。
明らかな無限ループ以外のループ、すなわち変数を使った
判定条件を伴うループが無限ループになる可能性があるかどうかを
判断するのは困難だということだ。
しかし、それが不可能かというと必ずしもそうではない。
われわれプログラマはしばしば机上デバッグで無限ループを発見する
からね。
すなわち条件判定に使用される変数に対するすべての入力条件を
追跡することで、無限ループになる可能性がないか否かは判断できる。
0756デフォルトの名無しさんNGNG
>>754
任意のプログラムに対してそれが無限ループを含むか判定するプログラムが存在するかってことじゃないか?
0757デフォルトの名無しさんNGNG
>>756
無限ループかどうかは、結局>>754の構造を含んでいるかどうかということに帰結する。
条件分岐において可能性のある条件をすべてしらみつぶしに検証すれば、任意のプログラムにおいても
無限ループを含むかどうかを、一般解として生成することは可能だ。
つまり、>>752の命題は論理的には間違いである。
しかしながら、現実問題として、すべての条件をしらみつぶしに検証した場合、数百年いや1京年かかっても
検証が終わらないプログラムなどざらだろう。
0758組込もしまっせNGNG
無限ループになるかどうか難しいって話しは マンデルブロ集合とかからじゃないの?

input C;

Z:=0;
while |Z| < 5 do Z:=Z*Z+C;
0759デフォルトの名無しさんNGNG
>>758
soreda!
0760デフォルトの名無しさんNGNG
ねぇ・・・(;´Д`)
本当にどうやれば12歳のおまんこが見られるのか
教えてください・・・
もう我慢汁が出てきてるんですけど・・・
0761デフォルトの名無しさんNGNG
>>760
だーかーらーエムエークスやれってば。
タイーホ予備軍の人が列をなして並んでますから。。。
0762デフォルトの名無しさんNGNG
>>761
ビルダーで見たいんですよ・・
0763デフォルトの名無しさんNGNG
>>762
MediaPlayer1->FileName = "ロリ動画.mpg";
MediaPlayer1->Display = Panel1;
MediaPlayer1->Open();
MediaPlayer1->DisplayRect=TRect(0,0,Panel1->Width,Panel1->Height);
MediaPlayer1->Play();

NY の方が、楽でええよ。鼻くそほじくってる間に大量のロリ動画が。
0764デフォルトの名無しさんNGNG
TListViewで、MultiSelectプロパティを変更したときにOnDeletionイベントが起こるのは
仕様なんでしょうか?

ヘルプに書いてある事と挙動が違うと思うんですが。
> OnDeletion イベントは,リストビュー内の項目が削除されようとしたときに発生します。
0765..NGNG
>>752 あたり
CBuilder というよりは純粋数学の問題だから、数学板に行くべき。

チューリングの定理:任意のプログラムが停止するかどうかを判断できるようなアルゴリズムは存在しない
http://www.miv.t.u-tokyo.ac.jp/~yabuki/tip/lisp/unknowable/turing.html

単純無限ループは「停止しないプログラム」の一部でしかないので間違えないように。
複数スレッドによるデッドロックとかも有るし。

「停止問題」と「チューリング」で google 引けば、証明も含めいろんな情報が手に入るよ。

この議論は『すべてのアルゴリズムに対し「停止するかどうか」を確実に判定する』アルゴリズムの
非存在証明であって、
『あるアルゴリズムが無限ループになるかどうかを判定する』アルゴリズムの存在は許している。

両者の違いが分からなければ、論理学/数学/国語をもう一度勉強すること。

非存在証明だから、現実世界にはあまり実用性は無い。
0766デフォルトの名無しさんNGNG
>『あるアルゴリズムが無限ループになるかどうかを判定する』アルゴリズム

>>754だな
0767デフォルトの名無しさんNGNG
∃∀と∀∃の違い棚
0768デフォルトの名無しさんNGNG
本日23:00時より祭りを開催いたします。
是非、参加下さいます様、お願いします。
携帯PHS
迷惑メールサイト一斉訪問お祭り開催
http://cocoa.2ch.net/test/read.cgi/phs/1043309596/
0769デフォルトの名無しさんNGNG
BCB6で、次のプログラムをコンパイルすると
エラー E2316 strcmp.cpp 7: '__strcmp__' は 'std' のメンバーではない(関数 main() )
と出ます。何が間違っているのでしょうか?

#include <cstring>

int main()
{
char f1[10], f2[10];

std::strcmp(f1, f2);
}
0770デフォルトの名無しさんNGNG
>>769
std::をとってみ。
0771デフォルトの名無しさんNGNG
>>770
std::を取ると動きますよね。でも、using宣言してないので、stdがないと
コンパイルできないはずですが、これってBCBが標準とずれていると
いう事でしょうか?
0772山崎渉NGNG
(^^)
0773デフォルトの名無しさんNGNG
なんかオプションあったでしょ。strcpyとかをインライン展開するかどうかってやつ。
0774デフォルトの名無しさんNGNG
std名前空間に含まれるのが標準なの? >strcmpとか
VCもstd::つけたらエラーでたけど。
0775デフォルトの名無しさんNGNG
>>773
#pragma intrinsic -strcmp
をヘッダファイルの宣言部の後に置いたら、無事コンパイルできました。
ありがとうございました。
0776デフォルトの名無しさんNGNG
Builderってプロファイラーとか自動テストツールとかってありますか?
0777 NGNG
台湾のエロ画像掲示板が今一番ホットと言えませんかね?

http://wossal.k-server.org/tw/

0778デフォルトの名無しさんNGNG
俺、仕事はVCやGCCで家ではBCB6使ってる。
BCBは6になってから、スゲー重くなったね。
XPで使ってるけど、不安定でBuild中によく落ちる・・・。
ソースエディタはVCの方が、細かい点で便利。
デバッガもVCの方が使いやすい。
BCBがVCよりも優れてる点は、GUIアプリ作成が容易なのと
豊富なコンポーネントだろうね。
趣味で使う分にはBCBは楽しいけど、情報源が少ないのが残念だよね。
(DelphiのTipsはそのまま使える場合が多いけど)
0779デフォルトの名無しさんNGNG
>>778
俺も仕事ではVC6とgcc、趣味ではBCB6だ。同じだね。偶然だ。
BCB6になってから確かに重くなったのでマシンを買い替えた。
それでも重いのでワクチンソフトを外した。ようやく納得いくコンパイル
速度になった。

元々ワクチンソフトはほとんど役に立ってなかったので、前から外そう
としていた。

VCの方がヘルプが親切だ。BCBはヘルプが貧弱でよほどVCLやWin32
を理解している人でないと使いこなせないと思った。

BCBはデータベース機能が強力なので、そのうちこれを利用して何か
作ってやろうと思っている。
0780デフォルトの名無しさんNGNG
俺もBCBは3から使ってるけどBCB6の安定度は最悪。

まぁ、MFCなんて使いたくないから仕方ないけどさ。
会社のライブラリを使えるのなら自宅でもVCでいけるのだけどなぁ。
流石にマズイらしい。
0781デフォルトの名無しさんNGNG
質問、BCB5です。
Application->ExeName で実行ファイルのパス付き得られますが全部大文字で得られます。
元の形で簡単に得る方法ありますか?
0782デフォルトの名無しさんNGNG
>>781
ParamStr(0) ではどうか。
0783781NGNG
>>782
ParamStr(0)のほかにGetModuleFileName()も使ってみましたが
どちらも大文字化済で返ってきました。
0784デフォルトの名無しさんNGNG
>>783
そうなると言語ではなくOSの問題だな。
0785781NGNG
>>784
そのようです。
試しにw2kで実行したら大文字化されずに返ってきました、win98SEだと大文字…。
パス分解してやるしかないのかな…
0786デフォルトの名無しさんNGNG
BCB3でstlportとboostが使えれば3で十分なのにな。
0787デフォルトの名無しさんNGNG
DelphiのプロジェクトをBCBでmakeすることは可能ですか?
0788デフォルトの名無しさんNGNG
>>787
可能ですが何か?
0789デフォルトの名無しさんNGNG
隠しコマンドを入力するとDelphi完全互換モードになるよ。
0790デフォルトの名無しさんNGNG
隠しコマンドは、[Alt]+[Ctrl]+[Delete]を押して[S]を押します。
0791デフォルトの名無しさんNGNG
>>789
それ本当?
0792..NGNG
Help - About で "SASADUKA" とか?
0793デフォルトの名無しさんNGNG
>>792
もう時効。カナロックして ALT-ササヅカ
0794デフォルトの名無しさんNGNG
バカな質問でもうしわけない
ドラッグ&ドロップを行う場合
ドラッグもとの方の特定というのは
何で行えばいいのでしょう?
例えばフォームの中にListViewが二つあって
TreeNodeにドラッグする場合、どちらのListView
からのドラッグなのかを特定したいのですが...

もすかしてよく理解していないハンドルとか
いうやつでしょうか?

0795デフォルトの名無しさんNGNG
また移転ですかぁ
0796デフォルトの名無しさんNGNG
夜勤は早く氏ねばいいのにな。
0797デフォルトの名無しさんNGNG
かちゅ〜しゃのスレッド表示欄みたいなのを
作成できるコンポーネントってありますか?

TListBoxを使うと一列しか表示できないんで・・・
0798デフォルトの名無しさんNGNG
>>797
TListView
ViewStyle=vsReport
0799デフォルトの名無しさんNGNG
>>798
おお!ありがとうございます。
明日は幸せになれそうです!
0800デフォルトの名無しさんNGNG
あ、動的に生成出来ますよね?
できなくても構わないんですが・・・・

TListView* listView = new TListView(Form1);
↑
こんな感じですよね?多分・・・
0801デフォルトの名無しさんNGNG
>>794
一番簡単な方法は、Tagプロパティで見分ける。
ListView1->Tagを0、ListView2->Tagを1などにしておく。

void __fastcall TForm1::TreeView1DragOver(TObject *Sender, TObject *Source,
int X, int Y, TDragState State, bool &Accept)
{
Accept = Source->ClassNameIs("TListView") && dynamic_cast<TListView*>(Source)->Tag == 0;
}
void __fastcall TForm1::TreeView1DragDrop(TObject *Sender, TObject *Source,
int X, int Y)
{
TreeView1->Items->AddChild(TreeView1->Selected, dynamic_cast<TListView*>(Source)->Selected->Caption);
}
0802デフォルトの名無しさんNGNG
dynamic_cast<TListView*>(Source)->Tag

なんか凄いな
0803794NGNG
>>801
なるほど、ありがとうございます。
0804デフォルトの名無しさんNGNG
ありがとうございます。
0805デフォルトの名無しさんNGNG
Indy 9.0.11でcookie取得から、POSTのためのヘッダへの追加までを教えてください。
8.*と違ってて、どうあつかっていいかわかりません。
0806デフォルトの名無しさんNGNG
>>805
ソース嫁。
0807デフォルトの名無しさんNGNG
>>806はケチ
0808デフォルトの名無しさんNGNG
オープンソースってそんなもん。
0809デフォルトの名無しさんNGNG
じゃあオープンソースなんかいらない。
0810名無しさんNGNG
      ソ ー ス は ど こ ?
                            ∧⊂ヽ
      ∧_∧∧_∧            ∩(,,゜Д゜)ノ
    卩(´Д`三 ;´Д`)Ψ     ∧∧  彡  /
    ⊂    三    つ     (゜Д゜,,≡=    )
   ̄ ̄ ̄⊂⊃ ̄ ̄ ̄ ̄ ̄ ̄ ̄⊂⊃ ̄ ̄ ̄ ̄ ̄ ̄ ̄
          (ξ';;::;;)          (ξ';;::;;)
            ̄ ̄            ̄ ̄ 
0811805NGNG
なんとかできたから、もういいや。
0812デフォルトの名無しさんNGNG
ありがとうございました。
0813デフォルトの名無しさんNGNG
http://www.zdnet.co.jp/news/0301/28/nebt_01.html
0814デフォルトの名無しさんNGNG
>>813
はいはい。昔から Win32 SDK 相当品をつけていましたが、なにか?

Visual Studio がつくってんなら驚いてやるけどさ。
0815デフォルトの名無しさんNGNG
>>810
場違いなボケに禿藁。
0816デフォルトの名無しさんNGNG
ありがとうございます。
0817デフォルトの名無しさんNGNG
C++Builderで作ったアプリケーションはC++BuilderがインストールされてるPCじゃないと動かないんですか?
普通にフリーで配布されてるソフトみたいにコンポーネントを必要としないものをこれで作ることはできないんですか?
0818デフォルトの名無しさんNGNG
>>817
スタティックリンク

でなければ、ふつうにディストリビューションウィザードつかうか、
http://www.vector.co.jp/soft/win95/util/se156538.htmlをつかえ。
0819デフォルトの名無しさんNGNG
>>818

スタティックリンク

複数のオブジェクトを連結して実行ファイルを作るリンク時に、必要なコードすべてを実行ファイルに含めてしまうリンク方法。
実行時にリンクを行うのがダイナミックリンク。


↑これのことですか(google検索) なんとなく意味がわかりました
まだこのソフト使って一週間なんで。。とりあえず勉強して作れるようにします ありがとうございました
0820デフォルトの名無しさんNGNG
ttp://www.fk.urban.ne.jp/home/kishida/bcbtrain/firstprogram.html
の下半分あたりを設定すれば。とりあえずは。
0821デフォルトの名無しさんNGNG
>>820
さんきゅです
0822デフォルトの名無しさんNGNG

次期バージョンの発売はいつですかね?
今年中?実は来月?
0823デフォルトの名無しさんNGNG
とりあえずUPDatePackの1と2をあてたが、
BCB閉じる時の「セーブするかい?」が英語になった。
何か失敗したのか、そういう仕様なのか・・・
0824デフォルトの名無しさんNGNG
教えてください
TJPEGImageをDIBに変換したいのですが
どのようにするかアドバイスをください。
おねがいします。
0825デフォルトの名無しさんNGNG
c言語でテキストアドベンチャーを作ってるんですが
リンクのさせ方が分かりません
そもそもcで作るのが間違いでしょうか
0826デフォルトの名無しさんNGNG
>>822
その前にパッチは・・・。
0827デフォルトの名無しさんNGNG
>>825
cで作っておけば、移植上、便利ですよ。
 ただ、そういうの作る時はスクリプトにして、スクリプト上で実装した方がいいんじゃないの?

自分は、 cでスクリプトエンジン作って、BCBでコンパイルしてDelphiにリンクして
Delphi側でコンポーネント作って、 さらにそれをBCBで使っています。
0828デフォルトの名無しさんNGNG
変な事しますね
0829デフォルトの名無しさんNGNG
BCBでなくDelphiでコンポーネントを作るメリットは何だろう。
0830デフォルトの名無しさんNGNG
>>829
Delphiのコードをそのまま使えるから
0831デフォルトの名無しさんNGNG
>>823
http://pc2.2ch.net/test/read.cgi/tech/1035596146/5n-



(↑のURL,ブラウザで開けないのなんでだろ〜)
0832デフォルトの名無しさんNGNG
>>829
スクリプトの為のツール類をDelphiで作るのに、
Delphiでコンポを作っておけばBCBと両方で動くから便利
BCBはC/C++の検証を含めた部分担当って感じかな
0833デフォルトの名無しさんNGNG
IdHTTPでGetしてタイムアウトした時、タイムアウトはどうやって検知すればいいのでしょうか?
0834デフォルトの名無しさんNGNG
コードネーム“Galileo”は来期に持ち越しか、ボーランド
http://www.atmarkit.co.jp/news/200302/05/borland.html
0835833NGNG
訂正
例外の原因がタイムアウトか否かを見るにはどうすればいいのか?ということでし。
0836833NGNG
補足
NMHTTP->BeenTimedOut に代わるものは何か?ということです。
0837825NGNG
>>827-828
ありがとうございます
学校の課題なんです
0838デフォルトの名無しさんNGNG
"1.0000,2.0000,3.0000,4.0000........"みたいな要素数に制限のない文字列を、
それに対応した要素数の配列に格納する方法ってありますか?
0839デフォルトの名無しさんNGNG
方法はある。
0840デフォルトの名無しさんNGNG
どんなでしょ?
0841デフォルトの名無しさんNGNG
文字列のサイズ÷2程度の配列を作っておいて、それに格納した後、余った部分を開放
0842デフォルトの名無しさんNGNG
STL 使って vector に突っ込んでけば?
0843デフォルトの名無しさんNGNG
すなおに StringList でいいんじゃないの?
0844名無しさんNGNG
>>843
同意。TStringListをキーワードにしてヘルプ読めばいい。
0845デフォルトの名無しさんNGNG
>>841-844
解決しました!感謝です。
0846デフォルトの名無しさんNGNG
うーん 実行速度は
1 >>841(malloc)
2 >>842(Vector)
3 >>843-844(StringList.Commatext)
だろうな。
慣れの順はこの逆だろうな。
慣れれば3つとも書く時間は同じ程度か、
0847843NGNG
>>845
感謝の言葉はいらないから、どの実装を使ったのか教えてくれ。
そのほうが教えたほうも嬉しい。
0848デフォルトの名無しさんNGNG
>>846
なれなくても、ライブラリ使う分にはコードを書くコストは無い。
慣れてきても、ライブラリを使わない場合にはコードを書かねばならない。
手持ちのライブラリを使う。ってのはライブラリを使うってことだ。

速度は、データコピーが律則段階となるから大差ないと思うよ。
0849デフォルトの名無しさんNGNG
>>848
 データコピーは
  mallocで必要メモリ以上を確保する方式は1回
  Vectorを使った場合は、データ数の対数に比例
  StringListを使った場合は、書き出しデータの分は1回だが文字列の方を2度スキャンしてしまう
  上、1回目のスキャンでコピーも発生する

0850デフォルトの名無しさんNGNG
>>849
>mallocで必要メモリ以上を確保する方式は1回
ほんとか?
0851デフォルトの名無しさんNGNG
>>849
838 さんの、元のお題があいまいだからなんともいえないけど。

841 のアイデア、いまいち理解できないんだけど。
たとえば4番目の文字列を欲しい。ってとき、まさか要求されるたびに最初からスキャンするの?
0852デフォルトの名無しさんNGNG
まぁ、俺ならvector使うだろうなぁ。
0853デフォルトの名無しさんNGNG
誰か簡単なソケットサーバのサンプル作ってくれー

ServerSocket使って
一応接続クライアント接続->メッセージ送信

までできたんだけど
「たまにメッセージが届かない」
かったり
「サーバから一度メッセージを送信すると二回目以降メッセージが届かない」

等

クライアントはFLASHのXMLソケットで作ってます。
■ このスレッドは過去ログ倉庫に格納されています