くだすれC++Builder(超初心者用)その5

■ このスレッドは過去ログ倉庫に格納されています
2012/04/21(土) 13:26:14.76
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
C++Builder使いが優しくコメントを返しますが、
お礼はC++Builderの布教と初心者の救済をお願いします。

■C++Builder XE2 - エンバカデロ・テクノロジーズ
http://www.embarcadero.com/jp/products/cbuilder


<過去スレ>
くだすれC++Builder(超初心者用)その4
http://toro.2ch.net/test/read.cgi/tech/1256256376/
くだすれC++Builder(超初心者用)その3
http://pc11.2ch.net/test/read.cgi/tech/1171219191/
くだすれC++Builder(超初心者用)その2
http://pc10.2ch.net/test/read.cgi/tech/1144308804/
くだすれC++Builder(超初心者用)
http://pc8.2ch.net/test/read.cgi/tech/1117225464/

<兄弟スレ>
くだすれDelphi(超初心者用)その54
http://toro.2ch.net/test/read.cgi/tech/1325028195/
2012/07/31(火) 17:55:58.22
でけた。
2012/07/31(火) 20:57:10.15
2010多いな
XEとかXE2の質問がほとんどねえ
という事はXEが2010のバグ取りバージョンで、XE2がDelのみを64bit化したわけか
2012/07/31(火) 21:15:57.16
XE3出たら買うよ
それまで2010で我慢しろく
2012/08/01(水) 01:50:30.91
XE3 がでればよいね
289デフォルトの名無しさん
垢版 |
2012/08/02(木) 10:26:06.26
MouseDownイベントでマウスボタンが押されている間マウスカーソルを変更したいのですが変更されません
マウスボタンを離したら変更されるのですが
これボタンを押してる状態でカーソルを変更させる方法を教えてください
2012/08/02(木) 13:06:25.71
でけた。
291デフォルトの名無しさん
垢版 |
2012/08/06(月) 22:26:49.96
Stringgridの罫線?の色ってどやってかえるの?BuilderXE使用中です
292デフォルトの名無しさん
垢版 |
2012/08/08(水) 16:05:43.47
jconvert.pasを2010でコード変えずにコンパイルする方法を教えて・・・
2012/08/08(水) 16:20:47.12
お前には無理だからあきらめろ
2012/08/09(木) 22:27:49.07
1.テキストファイルを読み込む
2.構造体を宣言しデータごとに格納
3.格納されたデータを表示

というプログラムを作りたいです。
1.をOpendialogを用いてできましたが2,3をどうしたら良いかさっぱりです。
詳しく解説している書籍やWebサイトなどがあれば教えてください。
C言語で書いているものはいくつかあったのですが
C++で解説しているのは見つからなくて・・・

テキストファイルの中身は
1 佐藤 175cm 70kg
2 鈴木 170cm 65kg
3 田中 165cm 60kg
のような学籍番号や氏名、身長体重が記載されているものです。
2012/08/09(木) 23:03:15.74
取得したテキストファイルを1行ごとの文字列として処理して、
(Lines->Strings[i]とか)
その文字列を学籍番号や氏名の区切り文字でわけて
構造体(の配列?)に順に格納していく。
それを最終行まで繰り返す。
表示は表示先しだい。
2012/08/09(木) 23:11:33.48
>>295
ありがとうございます。
早速LinesやStringsなどで調べてみます。
2012/08/10(金) 04:41:10.79
>>296
OpenDialogでテキストを何に読み込んでるかわからんけど、
TStringListやTMemoでテキストを読み込んでいろいろと処理する
サンプルなら検索すればいくらでもあるかと。
2012/08/10(金) 13:56:39.70
>>297
TstringList 構造体
などで検索をしましたが中々これだ!というものが見つかりませんでした。
Delphiですが
http://hpcgi1.nifty.com/MADIA/DelphiBBS/wwwlng.cgi?print+200403/04030068.txt
のような事をやりたいです。
良い検索ワードがあれば教えていただけないでしょうか?
2012/08/10(金) 14:10:47.89
「のような事」じゃなくて、自分の言葉で書けよ。
せめてリンク先のどこまで理解できてどこが理解できないのか、
自分がやりたいこととここが違うからこうしたいとか。

何がやりたくて何がわからないのかさっぱりわからない。
300デフォルトの名無しさん
垢版 |
2012/08/10(金) 14:12:19.46
テキストはcsv(カンマテキスト)にしてTStringListで嫁
んで、もう1つTStringListを使ってCommaTextにぶちこんでアレしろ
2012/08/10(金) 14:28:40.18
>>299
すみません。
OpenDialogを使用してテキストデータのパスを取得
それをTStringListオブジェクトに読み込み
1 175 60
2 180 70

のような数字のテキストデータを
それぞれ身長 体重 学籍番号 などに分類したいんです。
構造体を宣言し、格納したいのですが
どういうプログラムを書けば格納できるのかサッパリなんです。
2012/08/10(金) 14:49:40.63
それ>>294のまんまじゃん…
2012/08/15(水) 06:20:05.82
C++Builder 2007で作成していたソフトウェアを、C++Builder XE2で開発しよう
と環境を移し変えているのですが、コンパイル時によく分からないエラーが出て
困っています。

[BCC32 エラー] Winapi.Windows.hpp(2102): E2257 , が必要
[BCC32 エラー] Winapi.Windows.hpp(2750): E2257 , が必要
[BCC32 エラー] Winapi.Windows.hpp(2752): E2257 , が必要
[BCC32 エラー] Winapi.Windows.hpp(2754): E2257 , が必要
失敗
経過時間: 00:00:01.1

これ、自分が書いたCPPファイルの最初の方や、ヘッダファイルの書き方に妙な
ところがある。
ということでいいんでしょうか?

C++Builder 2007から、C++Builder XE2への移行なんで、UNICODEへの対処に
ついては理解しているつもりですが、このエラーメッセージでは、何が何だか
分からず、とても凹んでいます。
(というか、UNICODE絡みで変なとこがあれば、デバッグで自分のソースを指摘
してくれそうなもんですが、このメッセージだと何がなんやらで・・・)

何かヒントになりそうな事でもいいので、教えてください。
よろしくお願いします。
2012/08/15(水) 09:36:27.48
WINVER が小さいとみた
2012/08/15(水) 10:08:52.21
プロジェクトそのものは新しく作ったほうがいい
306デフォルトの名無しさん
垢版 |
2012/08/15(水) 10:36:55.85
めんどくせぇ
307デフォルトの名無しさん
垢版 |
2012/09/25(火) 18:57:45.79
最近人気ねえなage
XE3パスする事にしたしなあ
2012/09/26(水) 03:33:04.80
ドキュメントがでてきた?

ttp://docwiki.embarcadero.com/RADStudio/en/BCC64.EXE,_the_C%2B%2B_64-bit_Compiler
2012/09/26(水) 13:29:54.80
こっちはくだすれだから。統合本スレに移動しておきましょ。
2012/09/26(水) 17:55:54.57
だって事実上質問はこのスレにしか来ないじゃん
本スレは荒れ放題だし
2012/09/26(水) 19:47:41.09
あっちは被害担当艦だろ
2012/10/01(月) 14:22:28.27
C++Builderをバリバリ使ってる人、手挙げて−

まず俺
2012/10/01(月) 14:48:44.19
     ∧_∧
     ( ゚ω゚ ) C++Builderは任せろー
 バリバリC□l丶l丶
     /  (   ) やめて!
     (ノ ̄と、 i
        しーJ
2012/10/01(月) 15:33:26.34
なぜ止める!
2012/10/01(月) 17:21:13.46
バリバリはまずいだろ。
2012/10/01(月) 19:34:24.67
>>313
かわいい
元ネタ何?
2012/10/01(月) 19:46:46.39
そのまんま「バリバリ AA」でggr
2012/10/02(火) 10:31:35.18
312だけど、バリバリって何かと思ったら、あのバリバリか
誕生日に奥さんにポーターのバリバリ貰った俺は…
2012/10/02(火) 11:19:12.06
ま、場を考えて使え。って点ではおなじだな。
Boost や C++99 の話をしているところに C++BUilder 使ってま〜す。って入って行ったら
あのバリバリと同じ思いをすることになるしな。
320デフォルトの名無しさん
垢版 |
2012/10/05(金) 07:23:14.72
C++Builder XE3 を試しに使ってみたんだけど
SDIアプリを作成して
vectorを使おうと
#include <vector>
して
vector<int> abc;
と書くとエラーになる

何がいけないんだろ
321片山博文MZボット ◆0lBZNi.Q7evd
垢版 |
2012/10/05(金) 12:41:44.65
using namespace std;
または
std::vector<int> abc;
2012/10/05(金) 21:53:24.59
>>321
ありがとう
うまくいきました。
323デフォルトの名無しさん
垢版 |
2012/10/18(木) 01:58:27.76
設定の段階で詰まりました
http://i.imgur.com/GIbjD.jpg
e2075でcfgファイルの何がダメだのかわかりません
よろしくお願いします
2012/10/18(木) 03:45:38.68
>>323
CFGファイルの中身晒せや
2012/10/18(木) 04:05:07.70
全角スペースあたりかねぇ。あとは冒頭に UTF8 BOM が入っているか。
.cfg はテキストファイルだから、からのテキストファイルでエラーが出ないことを確認したうえで
一行ずつ追加しては動作確認すれば、どの行に問題があるか見つけられるでしょう
2012/10/18(木) 04:12:10.34
BOMの可能性が高い。
試してに.cfgに-myoptionの行を入れてbcc32を実行すると
オプションの間違い: -myoption
と表示されるが、その部分が化けている。
2012/10/18(木) 05:23:03.20
テレビ番組「つまらなくなった」が71.2% 「昔は良かった」の声
投稿日: 2012年10月17日 15:00

この秋の新番組を、読者の皆さんはご覧になっているだろうか?
10月10日にスタートした『相棒 Season11』の初回2時間スペシャルの平均視聴率は19.9%
(ビデオリサーチ調べ・関東地区)となり、『相棒』シリーズの初回としては過去最高のスタートを見せた。
この他にもNHKの朝ドラ「純と愛」も初回視聴率19.9%(ビデオリサーチ調べ 関東地区)と、
前回の「梅ちゃん先生」を初回視聴率で上回る好発進を見せている。

視聴率においては好調なものも複数あれど、「最近、テレビがつまらない」と嘆く声は
メディアやネットの意見でしばしば目にすることが多い。本当に「昔よりテレビはつまらなくなった」のだろうか?

双方向のデータ通信での視聴者参加型番組や、最新技術を駆使した映像など、
テレビで表現できることはますます広がってきているはずなのだが…。
「昔にくらべて、テレビ番組は全般的にどうなったと感じますか?」という調査では、結果は以下のようになっている。

・面白くなった:6.7%
・変わらない:15.8%
・つまらなくなった:71.2%
・わからない:6.3%

(リサーチパネル調べ、17万4805人が対象)

このように、実に7割以上の人が「テレビ番組がつまらなくなった」と回答。
年齢別では、10代が55.0%と最も低く、20代66.8%、30代69.7%とその数字は上昇。
40代以上の年代はすべて7割を越えた。
http://shunkan-news.com/archives/1557
2012/10/18(木) 05:56:31.16
すみません。誤爆しますた。
329デフォルトの名無しさん
垢版 |
2013/01/16(水) 15:47:32.89
C++Builder5でWindows7の64bitでMySQLをODBC経由で接続したいのですがエラーになります。
32bitなら正常に接続できます。
64bit用のodbcドライバに対応するlibとdllありますか?
ちなみにWin7 64bitにODBC32bit用ドライバをインスコしてもMySQLが出現せずに選択できませんでした
2013/01/16(水) 20:28:37.06
具体的なアドバイスはできないけど、アプリケーションが32bitならODBCの設定もMySQLの
ライブラリも32bitのものを使うことになる。特にODBCの設定は64bitと32bitで別々なので要注意。
多分ODBCの設定で64bitのほうを見て
> MySQLが出現せずに選択できませんでした
っていってるだけなような気がするけど…。
2013/01/16(水) 22:37:24.97
Windows7の64bitの場合
ODBC接続マネージャーは普通にメニューから選ぶときと
.cplファイルを直接実行する場合とで
64bit用と32bit用で違うものが開かれる
332デフォルトの名無しさん
垢版 |
2013/01/17(木) 10:25:25.77
32bit用のMySQLのODBCドライバをインスコしてから
ODBCデータソースアドミニストレーターで新規作成をしても
リストにMySQLが表示されないんですが
2013/01/17(木) 10:32:33.44
32bitのODBCデータソースアドミニストレータを起動してるか?
334デフォルトの名無しさん
垢版 |
2013/01/17(木) 11:00:56.94
管理ツールの中の
ODBCデータソースアドミニストレーター
は64bit専用

C:\Windows\SysWOW64\odbcad32.exe
が32bit専用の
ODBCデータソースアドミニストレーター
335デフォルトの名無しさん
垢版 |
2013/01/17(木) 12:14:35.20
>>333-334
ああ・・・
管理アレにあるのを起動してました。
これ64bitのですよね・・・
ありがとうございます。
32bitのを起動してみます
336デフォルトの名無しさん
垢版 |
2013/01/17(木) 12:26:33.17
ありがとうございました。できました!

が・・・
これ一度作ったのって構成で修正や削除ができない・・・
337デフォルトの名無しさん
垢版 |
2013/01/18(金) 13:10:41.80
ちょっとまた質問ですが
Win7の64bit版でODBC経由はうまくいったのですが
C++Builder5がインスコされていない別のPCでやると
データベースオープン時にエラーがでたので
InstallShield Express For C++Builder 5を使ってDB関係を含めてインストーラーを作ったのですが
これをWin7の64bit版で起動すると
このファイルのバージョンは、現在の実行中のWindowsのバージョンと互換性がありません
ってエラーが出てインストーラーが起動できません・・・
C++Builder5がインスコされてない64bit版でDBを扱うにはどうしたらいいのでしょうか・・・
2013/01/18(金) 14:22:08.70
C++Builder2009をWin7の64bitで動かしてますよーって人はいる?
2013/01/18(金) 14:36:39.73
>>337
ISXの作るインストーラは16bitアプリケーションなのでx64環境にはインストールできない
(x64環境では16ビットアプリケーションは動作しない)。
InstallShield買うなりInnoSetupのようなフリー/オープンのインストーラ使うなりご自由に。
340デフォルトの名無しさん
垢版 |
2013/01/18(金) 17:00:24.08
>>339
そうですか、ありがとう・・・

うーん、どうしよう
他のインストールシールドとかでどうやってC++Builder5のDB関係をインスコさせるのかわからないしなあ
2013/01/20(日) 19:34:15.58
>>340
オレが開発委託者ならキミには頼まないわん。VBでも使ったほうが良くない??
342デフォルトの名無しさん
垢版 |
2013/01/21(月) 11:18:03.34
>>341
知らないならレスしないで下さい。ウザイだけです
2013/01/21(月) 19:03:25.81
Delphi Pascal Compiler
コマンドラインコンパイラdcc32は、どういう場合につかいますか?
344341
垢版 |
2013/01/21(月) 20:40:50.34
>>341
ここにはIDでないからな。知らないで開発委託者の立場でレスはしない。
そんなことも知らないでC++を使ってるような経験値の低い開発者には
頼まないってこと。
MSがこれを入れておくと動きますよと言ってくれるVBで、といったのは
そういうわけ。
C++Builderはexeをコピーするだけで動くスタンドアロンなプログラムが作
れるのが利点の1つ。
345341
垢版 |
2013/01/21(月) 20:52:06.09
やれやれ、アンカみすってる。で、ここは超初心者スレだったのか。

プロジェクト→オプション

パッケージタブ 実行時パッケージを使って構築 のチェックをはずす。

リンカタブ リンクの共有RTL DLLを使う のチェックをはずす。

この2つで自前でLoadするDLL以外の依存は完全になくなる。実行ファイ
ルがでかくなるって嫌う人も多いが、そりゃ32Mバイトのメモリが広大だっ
たころの話。
これでデータベースのエラーがでるならそれはどこかがバグってる。
346デフォルトの名無しさん
垢版 |
2013/01/21(月) 21:43:56.42
>>344-345
ほんとに何も知らないならレスしないください。ウザイだけです。
347デフォルトの名無しさん
垢版 |
2013/01/30(水) 16:46:48.89
TChartで質問ですが
Series1->YValue[n] = 123;
みたいに既に作成されているグラフのn番目に値を後から変更できますが
Series1->Add( 0, "gggg", clTeeColor );
のようにAddした際にテキストとしてAddしているのですが
このテキストを↓
Series1->YValue[n] = 123;
これみたいに後からテキストの値を変更する方法を教えてください
348デフォルトの名無しさん
垢版 |
2013/01/30(水) 16:55:03.70
あ、ごめんでけた^^
2013/02/22(金) 00:11:14.73
C++Builder2010を使用しています。
スレッド間の排他制御に関して教えて下さい。

A、Bの2個のスレッドがあります。
Aで計算するデータをBで参照するだけの場合でも排他制御はした方が良いのでしょうか?
具体的にはAはループ処理でずっと計算をしています。
Bは定期的(1秒に1回とか)に計算結果をGUIに表示するだけです。

どなたかアドバイスをお願い致します。
2013/02/22(金) 00:16:26.09
当たり前だろ
マルチコアで変数に代入中に値を参照したらどうなる
アトミックなOS APIを使おう
351349
垢版 |
2013/02/22(金) 00:48:14.88
>>350

有り難うございます。
排他処理実装します。

「アトミックなOS API」の検索キーを教えて頂けませんか?
あちこち見て、クリティカルセクションというのを試して見ようと思っていました。
2013/02/22(金) 00:54:15.07
>>351
単純な排他制御はパフォーマンスに悪影響を及ぼす事がある

クリティカルセクションは主にデバイスドライバで使用する
一番多く使うのはMutex
インターロックAPI
セマフォ
イベント

などかな
2013/02/22(金) 06:20:24.65
いま、同一パソコン上で、2つのWindowsアプリケーションを動作させてて、そのプロセス間通信でメモリマップドファイルを利用してファイルデータの受け渡しを行ってるんですが、一方のWindowsアプリケーションを別のパソコンへ持っていきたいと考えてます。
この場合、イーサネットで接続するようになるのですが、名前つきパイプを利用すれば同等の機能が実現できますでしょうか?
2013/02/22(金) 08:37:37.69
それC++Builderに関係ない話だね
Win32スレで聞いたらいいかも
あ、今荒れてるか
2013/02/22(金) 18:48:14.14
出来るか出来ないかで言えば出来る
2013/02/22(金) 20:17:29.42
メールスロットでもいいんじゃねーの
プロセス間通信でしょ
357片山博文MZパンク ◆0lBZNi.Q7evd
垢版 |
2013/03/22(金) 23:23:20.90
無料でC++Builderを使いたい。どこにあるの?
2013/03/22(金) 23:32:57.19
>>357
警察に言って聞くといいよ!
2013/03/23(土) 07:51:11.24
現在は14日間のTrialのみ
360デフォルトの名無しさん
垢版 |
2013/03/23(土) 16:33:24.75
試用期間は300日ですぞ
361デフォルトの名無しさん
垢版 |
2013/05/11(土) 16:43:38.72
362デフォルトの名無しさん
垢版 |
2013/06/29(土) 13:23:11.65
2010からXE4にVUPしたのですがプロジェクトオプションのデフォルト設定の仕方が分かりません
またパッケージを未使用にして保存してもいくつかXE4を再起動するとオンになってしまいます
(プロジェクトを保存して開き直す場合は反映されているのにXE4を再起動するとダメです)
XE3をいれてみても同じです。どうしたらいいの?
2013/06/29(土) 17:22:08.08
デフォルトのプロジェクト設定はXE2辺りで無くなった
便利だったのにね

ファイルに保存できるオプションセットを使えだとさ
これ、正直仕様がよく分からん
2013/06/29(土) 19:06:04.50
ありがとう!やっぱりそれですよね
でもパッケージの使用可否はやはり設定できないようです
365デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
俺も>>362と同じく2010からXE4にした者なんだけど
Releaseでコンパイルする方法がわからない・・・
以前は構成マネージャでdebugとreleaseを切り替えてたのに無くなってるので
これ何処で設定するの??
366デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
表示メニューに移動してた・・・

何でこんな糞みたいなことするんだろ
デフォのプロジェクト保存とか勝手に無くすし
2013/07/01(月) NY:AN:NY.AN
プロジェクトオプションのダイアログの一番上にあるターゲットじゃないの?
368デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
>>367
それってたぶん、プロジェクト設定のターゲットじゃないかな、かな。
まあとりあえず解決したんだけどさ


つーか、exeでかすぎwwwwwwwwwwwwwwwwwwwwwwwwwwwww
とりあえずフォームだけのをコンパイルしてみたらexeが4MBってwwww
大丈夫なのかこれwwwwwww

以前C++Builder5でexeが肥大するバグがあってするUpdateが出たけど
何で使いもしないのも無理やりexeに組み込むんだろ
2013/07/01(月) NY:AN:NY.AN
自分の所でしか動かさないのなら動的RTLの使用にチェックを入れとけば?
370デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
DebugとReleaseを切り替えるのって
プロジェクトマネージャで1ダブルクリックじゃん
XE4すげー便利じゃん
371デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
>>369
XE4入ってない環境で動かすから
>>370
プロジェクトマネージャ邪魔で非表示にしてるから今まで使った事ないんだよね
372デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
これツールバーカスタマイズでアクティブ構成のアレ追加できればいいのに
2013/07/01(月) NY:AN:NY.AN
プロジェクトマネージャが邪魔なら
オブジェクトインスペクタとかと同じ場所にタブにして置けばいいじゃん
タブ1クリックで切り替えられるんだからさ
374デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
なるほど、タブでアレしたらよさげな感じになりそうですね

っていうか・・・
64bitコンパイルできるっつーからゲットしたんだけど
これプロジェクトのターゲットに32bitしか表示されないんだけど・・・
どやったら64bitでコンパイルできるんですかね??
2013/07/01(月) NY:AN:NY.AN
プロジェクトマネージャ
ターゲットプラットホーム
右クリック
プラットホームの追加
376デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
>>375
ありがとうできました・・
これプロジェクトマネージャからでしか追加できないのかなあ

めっちゃ64bitをアピールしまくってたくせに何でデフォで選択できないんだろこれwwww
2013/07/01(月) NY:AN:NY.AN
フォームだけのexeで4MBは多分Builderのリンカがアホなのが原因
sensorとか使ってないRTLがてんこ盛りにリンクされてる

DelphiでフォームだけだとXE3では2.2MBくらいだった
378デフォルトの名無しさん
垢版 |
2013/07/01(月) NY:AN:NY.AN
>>377
マジですか
むしろDelphiでもXE4にしたら4MBくらいになったりとか?

ちなみに、C++Builder1、3、5、6、2007、2010、EX4と使ってきたけど
新しいのリリースする度にどんどんexeが肥大化してってるww
まあいろんな機能が実装されてるから仕方ないんだろうけど
フォームだけで4MBは無いよなあ・・・
2013/07/01(月) NY:AN:NY.AN
今やってみたら、Delphi XE4でもフォームだけで2.2MBだった。
俺の所ではBuilder XE4では3.5MBだけど何が違うんだろう?

リンカのオプションでマップファイル出力を詳細にすると何がリンクされているか分かるよ
380デフォルトの名無しさん
垢版 |
2013/07/02(火) NY:AN:NY.AN
動的RTLのチャック入れてるとか?
381デフォルトの名無しさん
垢版 |
2013/07/02(火) NY:AN:NY.AN
チャックって!!
チェックって脳内変換してね^^
382デフォルトの名無しさん
垢版 |
2013/07/04(木) NY:AN:NY.AN
XE4でさ、メモリをコピーだけするのを作ったのさ
んで、64bit OSで32bitと64bitでコンパイルして速度計ったら
64bitでコンパイルした方が倍時間がかかってたんだけど、何で?
2013/07/04(木) NY:AN:NY.AN
ソースさらせ
単に対象メモリサイズまで倍になってるってことじゃないだろうな
384デフォルトの名無しさん
垢版 |
2013/07/04(木) NY:AN:NY.AN
単純にメモリコピー速度を32bitと64bitで比較するためにアレしてみただが

#define DIBBUFFERSIZE (1920*2048*4)
DWORD *Dib1;
DWORD *Dib2;
Dib1 = (DWORD *)::VirtualAlloc( NULL, DIBBUFFERSIZE, MEM_COMMIT, PAGE_READWRITE );
Dib2 = (DWORD *)::VirtualAlloc( NULL, DIBBUFFERSIZE, MEM_COMMIT, PAGE_READWRITE );
int ms = ::GetTickCount( );
for( int i = 0; i < 100; i ++ ){
 ::CopyMemory( Dib1, Dib2, DIBBUFFERSIZE );
}
ms = ::GetTickCount( ) - ms;
Panel1->Caption = ms;
:: VirtualFree( Dib1, DIBBUFFERSIZE, MEM_DECOMMIT );
:: VirtualFree( Dib2, DIBBUFFERSIZE, MEM_DECOMMIT );
2013/07/04(木) NY:AN:NY.AN
CopyMemory が原因みたいだな
*des++=*src++
で単純にコピーすると64bitの方が速いな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況