■過去ログ置き場に戻る■
1-
前250
次250
最新50
[memo]
"9999999999_00.html#R20"
という感じで、URLの最後に "#R
レスNo
" を追加すると幸せになれます。
★初心者にVisual C++を教えるスレ★ Part18
251
名前:
デフォルトの名無しさん
:2005/04/25(月) 14:17:39
楕円の画像処理をする場合、
1画素1画素処理していく以外に何か方法とかありますか?
252
名前:
デフォルトの名無しさん
:2005/04/25(月) 14:18:25
>>251
LineTo
253
名前:
デフォルトの名無しさん
:2005/04/25(月) 16:49:59
>>249
自分がわからんからって人のせいにするなよ
254
名前:
デフォルトの名無しさん
:2005/04/25(月) 17:04:37
質問です。
pgm形式の画像ファイルを読み込むので、一番簡単な方法ってなんでしょうか?
255
名前:
デフォルトの名無しさん
:2005/04/25(月) 17:12:11
pgm形式って何?
256
名前:
デフォルトの名無しさん
:2005/04/25(月) 17:15:41
スレッドについて質問があります。
マニュアル等では、各スレッドの処理がタイムスライスに従って
移行しているようですが、一時的にプリエンプションを禁止して、
その後解除するような事はできるのでしょうか?
257
名前:
デフォルトの名無しさん
:2005/04/25(月) 17:18:23
あんまりマイナーな話題は、他の初心者の役に立つと思えないな。
258
名前:
デフォルトの名無しさん
:2005/04/25(月) 17:28:41
>>254
Unix系のライブラリを使うのがいちばん簡単。
まぁ、自分で書いても大したことないけどね。
詳しくはVCスレではないC/C++初心者スレか画像スレにでも。
>>255
鸚鵡返しに質問しないで少しは自分で調べたら?
259
名前:
デフォルトの名無しさん
:2005/04/25(月) 18:00:00
>>254
pgmだけ読み込むなら自前で処理したほうがいいね。
ライブラリを使うという手もあるけど、
ライブラリの使い方を調べてる時間があったら充分自分で実装できる。
もし使うならSusie Plug-inあたりがお勧めだね。
単純な形式だから、UNIX系のライブラリがお勧めできないのはわかるよね?
>>255
はるか昔の画像形式。
おじさんが若い頃はpgm使ってたんだよ。
リソースの代わりにソースに画像を埋め込んだりするときに使える。
その代わりものすごく効率悪い。
今ネイティブ形式として使ってたら池沼だね。
260
名前:
デフォルトの名無しさん
:2005/04/25(月) 18:08:46
マルチメディアタイマーと普通のタイマーの違いは何ですか?
261
名前:
デフォルトの名無しさん
:2005/04/25(月) 18:22:06
>>260
あなたにとっての普通のタイマーとは?
262
名前:
デフォルトの名無しさん
:2005/04/25(月) 18:27:24
普通のタイマーの誤差はおよそ0.06秒(厳密にはOSに依存)
263
名前:
デフォルトの名無しさん
:2005/04/25(月) 18:33:05
>>259
もしや、xpmと勘違いしていませんか?
つーか、pgmをソースに埋め込んだら只の阿呆ですな。
今でも2次元のべたデータにpgmのヘッダだけ付け足してxvで表示するエンジニアは目の前にごろごろしているんだけど、
unixも使えないロートルには荷が重い話かな?
264
名前:
デフォルトの名無しさん
:2005/04/25(月) 18:39:45
スレ違い
265
名前:
デフォルトの名無しさん
:2005/04/25(月) 18:55:22
>>262
ありがざいました
266
名前:
デフォルトの名無しさん
:2005/04/25(月) 20:40:49
>250
つSetThreadAffinityMask
>256
スレッドのプライオリティを最大まで上げれば、他に対抗するスレッドが
現れない限り、似たような効果は得られるとおもう。CPUが複数あるなら
意味なしだけど。
267
名前:
198
:2005/04/25(月) 20:47:43
>>198
>>219
どなたか教えて貰えませんか?
>>219
の設定にしたら通常は
日本語ヘルプが優先的に表示されるのでしょうか?
268
名前:
デフォルトの名無しさん
:2005/04/25(月) 21:18:17
>>267
再インストール
ここってパソコン初心者板だっけ?
269
名前:
デフォルトの名無しさん
:2005/04/26(火) 00:42:50
>>253
ここは初心者スレだぞ。
勿体ぶらずに説明しろよ。
270
名前:
デフォルトの名無しさん
:2005/04/26(火) 02:04:14
C++の基礎を勉強してからウィンドウズプログラミングをやろうと思っているのですが、
いきなりMFCから入っても大丈夫でしょうか?
MFCの方がWin32 APIだけよりも本格的っぽいので、いきなりこちらからやろうと思っているのです。
271
名前:
デフォルトの名無しさん
:2005/04/26(火) 02:42:37
とりあえずやってみろよ。
272
名前:
デフォルトの名無しさん
:2005/04/26(火) 03:15:32
SDKで++のライブラリを使いたいのですが(CFontなど)
インクルードファイルやリンクライブラリは何を指定すればいいのでしょうか?
その他注意点があったら教えて草代。
273
名前:
デフォルトの名無しさん
:2005/04/26(火) 05:30:37
MSDNのCFont見れば書いてあるんだがよ・・・
274
名前:
デフォルトの名無しさん
:2005/04/26(火) 10:39:47
基本クラスから継承してるから
それだけあってもダメかもしれんな
275
名前:
デフォルトの名無しさん
:2005/04/26(火) 11:56:15
MFC自体の初期化も必要かもしれんな。
276
名前:
デフォルトの名無しさん
:2005/04/26(火) 12:14:29
VS2003でクラスライブラリを作成して、「hello」というプロジェクトを作りました。
hello.cppのソースに
#include <ATLComTime.h>
を書き加えるとリンクエラーになるのですがどうしたらいいですか?
heloo.cppのソースは
// これは メイン DLL ファイルです。
#include "stdafx.h"
#include "hello.h"
#include <ATLComTime.h>
だけです。
初心者ですいませんがどなたか教えていただけないでしょうか?
277
名前:
デフォルトの名無しさん
:2005/04/26(火) 12:41:53
ATL使うならライブラリがいるんじゃないか?
ATLは初心者向けじゃないと思うから
それ以上はコメントしません。
278
名前:
デフォルトの名無しさん
:2005/04/26(火) 12:53:15
そうなんですか・・・。
サンプルソースがWindowアプリだったので内部処理の部分をDLL化してみたかったんです。
どうもありがとうございます。
279
名前:
デフォルトの名無しさん
:2005/04/26(火) 13:49:57
>>270
僕も君と同じような道を歩んだよ。C++を勉強して、MFCに入っていった。
Windowsプログラミングを習得するための入り口としては適してるかもしれない。
(というよりこれぐらいしかない?ATLはさすがに初心者は難しいだろうし)
ただ、int main(){}で始まるプログラミングしか知らない人は戸惑うと思う。
なんせ根幹となるループ構造が隠蔽されてるからね。フレームワークという概念を習得しよう。
MFCをある程度理解しWindowsMESSAGEとかも理解できてきたら、WIndowsがどのように成り立っているかが
ほんのすこし垣間見えるかも。
最終的には、MFCのダメさ加減を認識し始めたら一人前だ。
280
名前:
デフォルトの名無しさん
:2005/04/26(火) 13:58:53
>>218
static linkの場合は必要なものだけ選別してリンクするから
あの馬鹿でかいDLLの容量だけ増えるわけじゃないよ。
とはいえ、MFCはどういうわけかちょこっとstatic linkするだけでも、意外に容量的コストが
発生するという話だ。
281
名前:
デフォルトの名無しさん
:2005/04/26(火) 17:09:42
VC.NETで完全自作のエディタを作ろうと思ってます。
そこで、文字の色や文字数やデータ構造などを自由に決めるために、
CEditViewを使わずCViewで作ろうと思ってるのですが、
CViewにて日本語入力を受け付ける方法がわかりません。
今ひとつメッセージに関してわかっていない自分ですが、
どのように入力を受け付ければいいのか、
どなたか教えていただけませんでしょうか。
よろしくお願いいたします。
282
名前:
デフォルトの名無しさん
:2005/04/26(火) 17:13:22
>>281
ttp://home.h07.itscom.net/buruturi/VCTIPS_008.html
ちなみに(3)-(F)の直後でreturn 0;すれば(4)を書く必要はなくなる。
283
名前:
デフォルトの名無しさん
:2005/04/26(火) 17:48:39
> CViewで作ろうと思ってるのですが
完全自作じゃないじゃん
284
名前:
281
:2005/04/26(火) 17:53:18
>282
ありがとうございます。
ただ、早速試してみたのですが、どうもうまく行きません。
自分がメッセージ処理に疎いからだと思うのですが…。
-- CMyView.hの中身の一部 --
class CMyView : public CWnd {
protected:
afx_msg void OnPaint();
DECLARE_MESSAGE_MAP()
public:
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnDestroy();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
/* (イ)ここに何を書けばいいのか */
}
(続く)
285
名前:
続き
:2005/04/26(火) 17:53:43
-- CMyView.cppの中身の一部 --
BEGIN_MESSAGE_MAP(CSuperLView, CWnd)
ON_WM_PAINT()
ON_WM_CREATE()
ON_WM_DESTROY()
ON_WM_SIZE()
ON_WM_ERASEBKGND()
ON_WM_KEYDOWN()
/* (ロ)ここに何を書けばいいのか */
END_MESSAGE_MAP()
以上、(イ)と(ロ)の位置に何を書けばいいのかわかりません。それぞれに
(イ)afx_msg LRESULT OnIMEStartComposition(WPARAM wParam, LPARAM lParam);
(ロ)ON_WM_IME_STARTCOMPOSITION
を書いても「ON_WM_IME_STARTCOMPOSITIONが定義されてない」みたいな
エラーが出てきます。他に何をすればいいのでしょうか?
よろしくお願いします。
286
名前:
281
:2005/04/26(火) 17:56:20
>283
そうですね。すいません。
自分が使いやすいエディタを作りたいだけです^^
287
名前:
281
:2005/04/26(火) 18:00:37
>上×2
2行目、CSuperLViewではなくCMyViewです。すいません。
実際はCSuperLViewという名前にしてるだけです。
288
名前:
デフォルトの名無しさん
:2005/04/26(火) 18:02:30
なんつーか、免許取っていきなりレースに出るようなもんだな。
289
名前:
デフォルトの名無しさん
:2005/04/26(火) 19:52:29
// inside the class declaration
afx_msg LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam);
BEGIN_MESSAGE_MAP(CMyWnd, CMyParentWndClass)
ON_MESSAGE(WM_MYMESSAGE, OnMyMessage)
END_MESSAGE_MAP()
これを真似すればできる
290
名前:
281
:2005/04/26(火) 21:44:35
>289
できました! 感激です!
どうもありがとうございました!
頑張って免許取りたてでレース出てみます!
291
名前:
デフォルトの名無しさん
:2005/04/26(火) 23:01:14
>>232
メモリが無駄になる。
DLLが同じアドレスにロードされれば、同じ物理メモリを共有するが、
スタティックリンクしてしまうと、そういうことができない。
>>248
スレッドにうまく処理を分けるのはプログラマの仕事。
どのスレッドをどのCPUでいつ走らせるかはOSの仕事。
>>250
嘘いうなよ。
Win32 APIのSetThreadAffinityMaskで指定できる。
>>256
普通のユーザモードで走るプロセスは、
プリエンプションを禁止して走ることはできない。
いついかなるタイミングでプリエンプションが発生しても良いようにコーディングしてね。
292
名前:
デフォルトの名無しさん
:2005/04/26(火) 23:57:07
>>291
最近のPCはメモリの容量が多いので、スタティックリンクしたときの
メリットの方が多いですね。
293
名前:
デフォルトの名無しさん
:2005/04/26(火) 23:58:44
いやメリットは特にないだろ
294
名前:
デフォルトの名無しさん
:2005/04/27(水) 00:12:55
ロード時間の短縮と言ってみるテスト
295
名前:
デフォルトの名無しさん
:2005/04/27(水) 00:44:40
DLL hellを避けられるのは大きなメリット
296
名前:
デフォルトの名無しさん
:2005/04/27(水) 00:53:34
・自作DLLのほとんどがPreferredBASE=1000:0000で
配布されて居る件について。
・MicrosoftはSxsを推奨している件について。
297
名前:
デフォルトの名無しさん
:2005/04/27(水) 03:18:45
>普通のユーザモードで走るプロセスは、
>プリエンプションを禁止して走ることはできない。
>いついかなるタイミングでプリエンプションが発生しても良いようにコーディングしてね。
これってasmで割り込み禁止にしても?
298
名前:
デフォルトの名無しさん
:2005/04/27(水) 03:24:42
普通、ユーザープログラムが割り込みフラグ操作したら例外起きるよ(´・ω・`)
299
名前:
デフォルトの名無しさん
:2005/04/27(水) 04:37:32
DOS時代のまま時間が止まっているプログラマは、
ちょっとはマルチタスクOSについて勉強してよ。
そういうプログラマが書いたプログラムって悲惨なんだよね。
空ループして何かを待ったりして、メッセージポンプ止めてるのに、
イベント来ないとか文句言ったりさ。
>>296
MFCのDLLの話とは関係ないじゃん。
自作DLLをたくさんのプロセスで共有することってあるかな。
MSVCRTとかMFCとかならともかくさ。
するとしても、そいつらはみな同じ0x10000000にロードされるだろうから、共有できるでしょ。
300
名前:
デフォルトの名無しさん
:2005/04/27(水) 04:39:12
もちろん、DLLのロードアドレスがバッティングしたら、そりゃズレるけど、
そういう自作DLLを多数使うアプリってあるのかな。
もしDLLとEXEを同じところで作っていれば、
デバッグ時にVC++が、
バッティングしたからズラしたぞゴルァ
って言ってくるから、気がつくでしょ。
301
名前:
デフォルトの名無しさん
:2005/04/27(水) 08:46:03
ヲタ話は他所でやってくれよ
302
名前:
デフォルトの名無しさん
:2005/04/27(水) 08:50:59
#if !defined(___XXXXX)
#define ___XXXXX
#endif
の代わりに
#if _MSC_VER > 1000
#pragma once
#endif
を使う利点、欠点を教えてください
303
名前:
デフォルトの名無しさん
:2005/04/27(水) 09:01:38
それは初心者にとって非常に重要な問題なんだろうか?
普通の人にとってはどうでもいい問題にしか思えんな
304
名前:
デフォルトの名無しさん
:2005/04/27(水) 09:10:30
>>302
既出。
・利点
ソースを全部評価しないで済む。
・欠点
(当然だが)他のコンパイラでは使えない。
305
名前:
デフォルトの名無しさん
:2005/04/27(水) 12:31:25
>(当然だが)他のコンパイラでは使えない。
主要なコンパイラはサポートしてるらしいよ。
306
名前:
デフォルトの名無しさん
:2005/04/27(水) 13:41:20
>>305
主要なコンパイラでは_MSC_VERが定義されているの?
それは不便だ……
307
名前:
デフォルトの名無しさん
:2005/04/27(水) 14:52:42
Xp+VC7.1(.NET2003)です。
XP風のビジュアルスタイルにしたくて調べているのですが
「ButtonコントロールのFlatStyleプロパティをSystemに設定して・・・」
とあります。
ところが、プロパティ設定の画面には"Flat"はあるのですが"FlasStyle"はありません。
何か根本的に間違っているのでしょうか?
よろしくお願いします。
308
名前:
デフォルトの名無しさん
:2005/04/27(水) 14:55:30
XPスタイルにしたいなら民主党のマニュフェストを参考にしろ
309
名前:
デフォルトの名無しさん
:2005/04/27(水) 15:18:01
>>308
綴りが違う
310
名前:
デフォルトの名無しさん
:2005/04/27(水) 16:04:10
XP風のビジュアルスタイルにしたいんだろうか?
ボタンをフラットにしたいんだろうか?
たまたま見つけたサイトに書いてあることが真実か知りたいんだろうか?
まずそこをはっきりしろ
311
名前:
デフォルトの名無しさん
:2005/04/27(水) 16:14:25
質問です。環境は XP、VC++ 6.0 です。
MFC で作ったアプリで、アイコンの設定で躓いています。
サイズ 32×32、24 bit の bmp の拡張子を ico に変えたものを用意し、
リソース IDB_ICON32 として取り込みました。
C○○App クラスの InitInstance において、
HICON icon = LoadIcon( IDB_ICON32 ); // A
m_pMainWnd->SetIcon(icon, true); // B
として実行すると、起動中に B の行でアプリが強制終了されました。
24bit の bmp をリソースとして取り込むことはできないのでしょうか?
またその場合、リソースではなく外部からアイコンを取り込むにはどうすればいいのでしょうか?
よろしくお願いします。
312
名前:
307
:2005/04/27(水) 16:21:58
現在、フラットな画面をXP風のビジュアルスタイルにしたいんです。
プロジェクトはダイアログベースで作成しています。
313
名前:
デフォルトの名無しさん
:2005/04/27(水) 16:23:32
おま、そりゃアイコンじゃなくてビットマップだろうが
ビットマップをLoadIconしてどうすんだよ・・・
そのビットマップデータをペイントか他の適当なペイントツールで開いて全体をCtrl+Cでコピーして、
VCの新規リソースでICON作ってそこにペーストしる
314
名前:
デフォルトの名無しさん
:2005/04/27(水) 17:33:25
うーん……
8bit のビットマップをペイントで開いてコピー、
リソース作ってペーストして ico ファイルを作ったのですが、
どうしても再度読み込むと、パレット情報がばらばらになってしまいます。
(色がめちゃくちゃになる)
24-
>8
bit への減色は、ペイントで行なっています。
原因の見当がつきません。よろしくお願いします。
315
名前:
311=314
:2005/04/27(水) 17:33:59
名前を入れ忘れました、申し訳ないです。
316
名前:
デフォルトの名無しさん
:2005/04/27(水) 17:47:53
・普通、IDB_はビットマップに付ける名前。アイコンならIDI_。
・ペイントの原色の性能はまったくのポンコツ。
JPEGとかをGIFで保存してみたら一目瞭然。
317
名前:
311=314
:2005/04/27(水) 18:04:36
>>316
Photoshop で減色する際、使用中の入りを全て割り当てる、
Windows(システム)などが色々な種類がありますので、
アイコンなどに使われるパレットはもしかして固定なのかと思い、
もしそうなら Windows 付属のペイントならシステムにあった減色を
してくれるのでは?と思い、あえてこの方法をとりました。
間違った判断だったようですが……。
>>313
でお教えいただいた方法で IDI_*** として取り込むことはできました。
ところが、生成された ico ファイルは、パレットがむちゃくちゃでした。
むむー
318
名前:
デフォルトの名無しさん
:2005/04/27(水) 18:08:19
>>317
元々8bitで書いてないうえに、ペイントで原色してるんじゃそれはしょうがない
もっとちゃんとしたエディター使うべき
319
名前:
311=314
:2005/04/27(水) 18:09:10
>>318
なるほど、アイコン作成用のフリーソフトを探してみます。
ありがとうございました。
320
名前:
デフォルトの名無しさん
:2005/04/27(水) 18:21:33
あぁ、字が違う
原色→減色
321
名前:
デフォルトの名無しさん
:2005/04/27(水) 19:17:59
指定したフォルダの中に入っているファイル・フォルダの情報(ファイル名やサイズなど)を全て取得するにはどうすればよいのでしょうか?
322
名前:
デフォルトの名無しさん
:2005/04/27(水) 19:31:19
>>301
けっこう大切な話なんだけどな。
初心者にありがちなのが、
肝心なことをスルーしてしまうこと。
トレースに何か出ていても無視したりするんだよね。
323
名前:
デフォルトの名無しさん
:2005/04/27(水) 19:32:16
FindFirstFile
FindNextFile
FindClose
324
名前:
デフォルトの名無しさん
:2005/04/27(水) 20:00:12
Winコンソールで
int main(int argc,char** argv)の引数を入力して
デバッグはどうやってやるんですか
325
名前:
デフォルトの名無しさん
:2005/04/27(水) 20:53:02
gdb hoge a1 a2 a3
326
名前:
デフォルトの名無しさん
:2005/04/27(水) 21:53:05
>>324
VCでデバッグすればいいじゃない
327
名前:
デフォルトの名無しさん
:2005/04/28(木) 16:45:17
デバッガで、あるポインタから順にいくつかの中身を
表示するには、ウォッチでどう入力すればよいのでせうか??
328
名前:
デフォルトの名無しさん
:2005/04/28(木) 16:58:57
ポインタ[0]
ポインタ[1]
...
329
名前:
327
:2005/04/28(木) 17:53:06
まとめて表示するには?
カウンタ変数みたいにできない?
330
名前:
デフォルトの名無しさん
:2005/04/28(木) 18:00:16
質問です。環境は XP、VC++ 6.0 です。
MFC を利用してプログラムを行なってます。
ALT キーの入力の監視方法でつまづいています。
>error C2065: 'VK_ALT' : 定義されていない識別子です。
ALT キーの入力を見たいのですが、VK_ALT が定義されていないと言われました。
VK_RETURN や VK_ESC などは定義されています。
VK_A、VK_B、…も同様にエラーが出ますが、'A'、'B'、…で代用しています。
ご助言をお願いします。
331
名前:
デフォルトの名無しさん
:2005/04/28(木) 18:03:56
ms-help://MS.MSDNQTR.2003FEB.1041/winui/winui/windowsuserinterface/userinput/VirtualKeyCodes.htm
VK_MENU (12)
ALT key
332
名前:
330
:2005/04/28(木) 18:16:23
>>331
申し訳ございません、そのアドレスの意味が分かりませんでした……。
ヘルプは持っています。(MSDN ライブラリ MicrosoftR Visual StudioTM6.0 リリース)
333
名前:
デフォルトの名無しさん
:2005/04/28(木) 18:16:25
VC++6.0使ってます。
.NET2002持ってますが、将来的にはそっちに乗り換えたほうがいいでしょうか。
かなり使い勝手が違うようにも思えますが、
何か決定的に違うところってありますか?
334
名前:
デフォルトの名無しさん
:2005/04/28(木) 18:29:14
>>332
アドレスの下に書いてある2行がお前は読めんのか
335
名前:
デフォルトの名無しさん
:2005/04/28(木) 18:32:04
>>333
プロジェクトを新規作成するとき、
プロジェクト名と同じ名前のフォルダしか作れない。
例えば、プロジェクト名を毎回同じ(Hogeとか)にして、
フォルダ名に日付を入れる(Hoge20050428)ような使い方がしにくい。
336
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:11:31
すいません
演算でパイを使いたいのですが、
どうやって指定するんですか?
paiとかでいいんでしたっけ?
くだらない質問かもしれませんが、緊急なのでお願いします。
337
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:13:04
自分で定数定義すれ
338
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:13:05
>>336
スレ違い
339
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:16:01
すれ違いですかね?
まあ自己解決しました。
どうもです。
340
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:26:54
#define _USE_MATH_DEFINES
#include <math.h>
M_PI
341
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:29:32
もっぱい
342
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:39:10
#define PI 3
343
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:42:17
ネットで検索もしましたがいまいち分かりませんでした…
C言語の勉強をしたいのですが、visual C++以外に良いソフトはないのでしょうか?
また、現在その6.0が最新のようですが4.0がとても安かったので買おうか悩んでいます。
6.0に比べて機能に致命的な点はあるのでしょうか?OSはXP SP2です。
344
名前:
デフォルトの名無しさん
:2005/04/28(木) 19:48:16
C言語の勉強なら入門書の付録についてる無料コンパイラでいいかも
345
名前:
343
:2005/04/28(木) 19:57:41
あ、説明不足ですみません^^;
一応大学の情報工学部に入ったので、
将来的には割と難しいことができるようになりたいという前提です。
でも6.0を買うまでの金銭的余裕がないもので…よろしくお願いします。
346
名前:
デフォルトの名無しさん
:2005/04/28(木) 20:00:28
学生なら安く買えるだろ
347
名前:
デフォルトの名無しさん
:2005/04/28(木) 20:02:47
激安で買えるVisual Stdio.NET theSpoke Disc.9
http://pc8.2ch.net/test/read.cgi/tech/1103381010/
。
学生認証が必要だけど、5000円以下で買えるtheSpokeがいいと思う。
348
名前:
デフォルトの名無しさん
:2005/04/28(木) 20:03:50
情報工学部なら学校で聞けよ
アホか
349
名前:
デフォルトの名無しさん
:2005/04/28(木) 20:42:06
>>329
表示のために構造体でも定義してキャストしたらどうだろう。
>>343
情報工学の学生さんなら、とりあえずLinux入れてgccでいんじゃない?
350
名前:
327,329
:2005/04/28(木) 20:48:03
スレ違いじゃない質問ですが、答えてもらえない
351
名前:
デフォルトの名無しさん
:2005/04/28(木) 20:52:19
配列のデータなんて、アドレス取ってメモリビューアで見てるからウォッチの式は知らんなぁ
352
名前:
デフォルトの名無しさん
:2005/04/28(木) 20:53:18
>>350
>>349
が答えてくれてるじゃないか
ていうかアドレス指定してメモリヲッチしろよ
353
名前:
デフォルトの名無しさん
:2005/04/28(木) 20:56:54
すいません、VC++スタンダード版とVSプロフェッショナル版は、C++を使う上でどのような違いがあるのですか?
スタンダード版で開発したアプリケーションはシェアウェア公開する事が可能ですか?
当方、学生ではないので、どちらを買おうか迷っています。(pro版はあまりにも高いためスタンダードで妥協しようかと)
354
名前:
デフォルトの名無しさん
:2005/04/28(木) 21:20:32
>>353
高いやつは大規模なアプリの開発に向いてる。(複数人で開発するとか)
個人で小さいプログラム作るなら無料版でじゅうぶん
シェアウェア公開も可
355
名前:
デフォルトの名無しさん
:2005/04/28(木) 21:33:33
c++より誘導されて来ました。
new演算子を使い終了時にリークしていた時、
_CrtSetDbgFlagで正しく行番号をアウトプットに吐かせるには
どうしたら良いでしょうか
マクロで対応させれたと思うのですが、忘れてしまいまして、、。
宜しくお願いします
(´・ω・`)
356
名前:
デフォルトの名無しさん
:2005/04/28(木) 21:39:06
ここ初心者スレなんだけど
357
名前:
353
:2005/04/28(木) 21:55:35
>>354
無料版って事はVisual Studio 2005 Expressですか?
どうせなら製品版を使いたいんですが、スタンダードとプロフェッショナルとExpressの違いを教えてください。
358
名前:
デフォルトの名無しさん
:2005/04/28(木) 21:56:52
>>357
MSのサイト行け
359
名前:
デフォルトの名無しさん
:2005/04/28(木) 22:00:18
すみませんプログラムとは違うんですけど
バラバラにかかれているプログラムをショートカットで直す
のってどうやります?
たしかコントロール+オールで全部指定して
なにかするとおもったのですが
360
名前:
デフォルトの名無しさん
:2005/04/28(木) 22:05:50
なぜWindows板で聞かないのかと思った春
361
名前:
デフォルトの名無しさん
:2005/04/28(木) 22:10:12
>>359
質問が分かりません。
362
名前:
355
:2005/04/28(木) 22:11:07
二度目のスレ違いをしてしまったようです
吊ってきます
(つД`)
363
名前:
デフォルトの名無しさん
:2005/04/28(木) 22:35:03
>>355
Cランタイムなら_malloc_dbg
MFCならDEBUG_NEW
あたりだと思うけど。
ただ、_DEBUGが定義されてると、mallocは_malloc_dbgになるらしいぞ。
364
名前:
デフォルトの名無しさん
:2005/04/28(木) 22:57:51
>>358
載ってません。
実際の使用感を教えてください。
365
名前:
デフォルトの名無しさん
:2005/04/28(木) 23:01:26
>>353
スタンダード版は最適化ができないようになっている。
366
名前:
デフォルトの名無しさん
:2005/04/28(木) 23:12:07
勉強してるうちにどんどんバージョンアップが進むからな
使えるようになったころには使えない製品になってる。
367
名前:
デフォルトの名無しさん
:2005/04/28(木) 23:23:44
VC Toolkit + PSDK で勉強して、ある程度できるようになってからIDE買えばいいじゃないか
漏れは途中でtheSpokeに釣られたけどな...orz
368
名前:
デフォルトの名無しさん
:2005/04/29(金) 00:27:08
コンパイルしたりするのにIDEはなくてもいいが、
デバッグするのには欲しいな。
369
名前:
353
:2005/04/29(金) 01:11:32
>>365
ありがとうございます。
toolkitってやつで無料で最適化できますよね?
他には違いはありますか?
370
名前:
353
:2005/04/29(金) 01:14:02
>>367
BCC+BCCDevで勉強してます。
ある程度出来るようになってから何を買えばいいのかと思いまして。
371
名前:
デフォルトの名無しさん
:2005/04/29(金) 01:21:25
ベクターのフリーで作られたゲームなんかを見ていると
VBやツクールでつくられてるものが、ほとんどだけど
やはり、VC++でゲームをつくるには、時間と労力がかかりますか??
VC++でつくるのが王道って勝手に認識してるのですが。。
372
名前:
デフォルトの名無しさん
:2005/04/29(金) 01:26:19
作りたいものと自分のスキルで選べばよろし。
373
名前:
デフォルトの名無しさん
:2005/04/29(金) 01:26:44
vc++で開発したものと、VBで作ったものでは、
どういう違いがあるんですか?
374
名前:
デフォルトの名無しさん
:2005/04/29(金) 01:30:19
ここまでひどい質問は・・・
375
名前:
デフォルトの名無しさん
:2005/04/29(金) 01:30:25
VBはランタイムが必要だったよな
376
名前:
デフォルトの名無しさん
:2005/04/29(金) 01:30:38
>>372
難しそうですが、vc++でやってみようと思います。
ありがとうございました。
377
名前:
デフォルトの名無しさん
:2005/04/29(金) 01:33:46
>>374
きめ細かく組めるってことは知ってたんですが、、。
378
名前:
デフォルトの名無しさん
:2005/04/29(金) 02:25:38
なぜか誰も書いてないけど
変数名,要素数
で表示できるよ
379
名前:
378
:2005/04/29(金) 02:27:18
>>327
へ向けて書いたものですorn
380
名前:
デフォルトの名無しさん
:2005/04/29(金) 05:03:08
createwindow()の引数HANDLE hInstanceとはなんのインスタンスの
ハンドルなんですか?
createwndowの戻り値と同じもの???
381
名前:
デフォルトの名無しさん
:2005/04/29(金) 11:13:44
所属モジュールのインスタンスハンドル
WinMainの引数をそのまま渡せばよい
CreateWindowの戻り値はウィンドウハンドルだろーガッ
382
名前:
デフォルトの名無しさん
:2005/04/29(金) 12:20:48
HANDLE hInstance と HWND が同じモノに見えるのカ
383
名前:
デフォルトの名無しさん
:2005/04/29(金) 15:40:16
コンパイラ:VC++ 6.0
_WIN32_WINDOWS や _WIN32_WINNT に定義する値は、
「このバージョンからなら動くよ」という値を入れておけば良いのですか?
384
名前:
デフォルトの名無しさん
:2005/04/29(金) 16:09:10
そんなの気にしたことないな
385
名前:
デフォルトの名無しさん
:2005/04/29(金) 16:15:43
>>383
例えばWindows2000以降にしかない関数を使うとき、
APIによっては_WIN32_WINDOWSの値を大きくしないとプロトタイプ宣言が見えないことがある。
VC++6は1998年ごろのやつだから、Platform SDKを入れないとWindows2000以降の機能は使いにくいが。
386
名前:
383
:2005/04/29(金) 18:04:38
なるほど、分りました。
Platform SDKというのも調べてみます。
387
名前:
デフォルトの名無しさん
:2005/04/29(金) 18:07:47
何か論点がずれてるような?
388
名前:
デフォルトの名無しさん
:2005/04/29(金) 20:00:55
>>383
「このバージョン以降で動かすことを前提とする」という値。
マクロ定義が変わるだけで、呼べるAPIが変わる or コンパイル時にエラー出してくれるだけなので、
OSのバージョンによって実装されてないAPIを呼ぶようなプログラムでは、
それらのAPIを呼ぶ前に、自前でバージョンをチェックしてね。
いちおうEXEやDLLに、NT専用とかの設定はあるけど、
それでOSにハネさせるのは、一般のユーザには馴染みがないから、不親切です。
389
名前:
デフォルトの名無しさん
:2005/04/29(金) 22:12:28
> OSのバージョンによって実装されてないAPIを呼ぶようなプログラムでは、
> それらのAPIを呼ぶ前に、自前でバージョンをチェックしてね。
チェックする前に起動時にコケるわけだが
390
名前:
デフォルトの名無しさん
:2005/04/29(金) 22:52:02
実装されていない、って言葉によるな。
DLLにシンボルさえないAPIもあれば、
ERROR_CALL_NOT_IMPLEMENTEDが帰るAPIもある
391
名前:
デフォルトの名無しさん
:2005/04/29(金) 23:11:55
かなり曖昧だけど、、似たような条件下で書いたコードは
VC#やVBやjavaよりもVC++のほうが動作が速いですか?
.net frameworkを交えたら一緒になっちゃったりするわけですか?
392
名前:
デフォルトの名無しさん
:2005/04/29(金) 23:39:36
>>391
まあC++のほうが遅くなることはまずないと思うけどね。
速度にどれだけの差が出るかは場合にもよるのでちゃんとやりたきゃしっかりテストしましょう。
393
名前:
デフォルトの名無しさん
:2005/04/30(土) 00:11:29
ネイティブコンパイルしたVBはかなり速い
ただしオブジェクト変数さわったとたん遅くなるけど
394
名前:
デフォルトの名無しさん
:2005/04/30(土) 00:22:38
>>391
C#はCLR(共通言語ランタイム)で動くアプリを作れて、VC++はネイティブアプリを作れる、VBはしらんがな、6まではネイティブ作れた
[C#アプリ1]〜[C#アプリN]
|
[CLR] [VCアプリ]
[Windows]
CLR上のプロセスはWinからは1つのプロセス空間(CLR)にしかみえないのだろうか
ネイティブプロセスの仮想メモリ空間を効率的に使うとか本でちっと読んだが、実行時に中間言語コンパイル噛むとかで遅いらしい
395
名前:
デフォルトの名無しさん
:2005/04/30(土) 02:32:41
>>389
そういうAPIはインポートライブラリを使わずに、
LoadLibraryやGetProcAddressとか使いましょうよ。
>>391
ものによるなぁ。
C++は速いと信じきっていたけど、Javaを使って考え変わったよ。
C++は自由度が高すぎてコンパイラが大胆に最適化できないし、
けっこう無駄なコードを書いたりするから。
396
名前:
デフォルトの名無しさん
:2005/04/30(土) 04:38:50
>けっこう無駄なコードを書いたりするから。
そりゃ、書く人のスキル
397
名前:
デフォルトの名無しさん
:2005/04/30(土) 04:40:03
> C++は自由度が高すぎてコンパイラが大胆に最適化できないし、
ソースレベルで最適化。
398
名前:
デフォルトの名無しさん
:2005/04/30(土) 08:45:36
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
OS を再インストールしたので PSDK を Update しようとしたら This page has moved. になっちゃってました。
いまだに VC++ 6.0 で Windows 98 向けアプリを作ってるんですが 2003 年頃の PSDK は何処で手に入れればいいのですか?
399
名前:
デフォルトの名無しさん
:2005/04/30(土) 08:50:19
だいたいのC++コンパイラは、コードに基づいた静的な最適化しかしないけど、
JavaのJITとかはプロフィールベースの最適化だから、Javaの方が
速くなりうる、と言う話もあるよね。
400
名前:
デフォルトの名無しさん
:2005/04/30(土) 10:06:47
>>399
馬鹿ですか?
自動車とオリンピック選手がマラソンで競争したら
オリンピック選手の方が速いとかいいそうだな
401
名前:
デフォルトの名無しさん
:2005/04/30(土) 10:12:09
m9(^д^)
402
名前:
デフォルトの名無しさん
:2005/04/30(土) 10:38:59
>>400
もう少し勉強してから書き込んでくれ。
403
名前:
デフォルトの名無しさん
:2005/04/30(土) 10:48:02
http://homepage2.nifty.com/Fujimaki/download/Comparison/
最新バージョンのVB, VC, CB,Delphi, JavaおよびC#で作成された
同一アルゴリズムの簡単な数値計算プログラムの実行速度を比較してみた。
実行速度はおおよそ
VisualC++≒C# > Delphi ≒ C++Builder>VisualBasic≒Javaの順で,
以前の試験と比較すると,VBの速度が若干向上し,
初登場のC#がVC並みの速度を有することがわかった。
JavaはVCの1/4〜1倍程度の速度を有しており,
数値計算に不向きと言えるほどの低速ではなかった。
404
名前:
391
:2005/04/30(土) 16:03:06
漠然とした質問に答えてもらって、ありがとです。皆さん。
>>403
C#って意外と速いんですな。
VC++よりもえらく簡単そうなのに。。
405
名前:
デフォルトの名無しさん
:2005/04/30(土) 17:52:55
こんばんわ
質問があるのですが
Dialogをリソースエディタで
http://www.geocities.jp/devil_man_kekeke/pict1.JPG
に作ったんですが、
実際にアプリを実行させて、モーダルでShowさせたら
http://www.geocities.jp/devil_man_kekeke/pict2.JPG
な感じになり、
余計なボタンが2つとスタティックテキストが表示されてしまいます。(OK、Cancel、TO DO)
これはどうしてこうなるのでしょうか?
初歩的な質問になりますが、よろしくお願い致します。
406
名前:
405
:2005/04/30(土) 17:54:20
ちなみに、コーディングに関しては、
void CMainFrame::OnTestEx6()
{
// TODO : ここにコマンド ハンドラ コードを追加します。
CEx06Dialog ex06dlg;
ex06dlg.DoModal();
}
としています。
.NET2003です。
407
名前:
デフォルトの名無しさん
:2005/04/30(土) 18:37:29
>>405
一度VisualStudioを終了して、再度ソリューションを開いたらリビルドして味噌。
それでもダメならリソースハンドリングかどこかで何かミスをしている。
408
名前:
デフォルトの名無しさん
:2005/04/30(土) 18:49:33
ダイアログとHTMLダイアログが重なっているように見える。
409
名前:
405
:2005/04/30(土) 19:19:12
>>408
なるほど
HTMLダイアログというものもあるんですね
IDH = IDR_HTML_EX06DIALOG
CDHtmlDialog(CEx06Dialog::IDD, CEx06Dialog::IDH, pParent)
これを無効にしたいんですが、どのようにすればいいのでしょうか。
通常のDialogだけ表示できればいいです。
410
名前:
405
:2005/04/30(土) 19:21:48
>>407
ご返答助かります。
HTMLダイアログの問題みたいです。
とりあえず、htmlの内容を全て消去して解決しました。
知識不足ですいません。
現在、VisualBasic6.0の分厚い本を参照して勉強しているので、HTMLダイアログの存在がわかりませんでした。
411
名前:
395
:2005/04/30(土) 22:29:08
>>396
>>397
俺も昔はそう思ってたよ。
412
名前:
デフォルトの名無しさん
:2005/05/01(日) 00:49:35
>>166
のように本音を言うと叩かれる法則。
413
名前:
デフォルトの名無しさん
:2005/05/01(日) 01:03:11
>>351
浮動小数点の場合はどうしてますか?
414
名前:
デフォルトの名無しさん
:2005/05/01(日) 01:04:17
VS.NET2003を使ってるのですが、コンソール用アプリを
プロジェクトを作らずにコマンドラインでコンパイルすることは
できないでしょうか?
415
名前:
デフォルトの名無しさん
:2005/05/01(日) 01:21:18
>>414
Microsoft Visual Studio .NET 2003\Vc7\bin\vcvars32.bat
416
名前:
デフォルトの名無しさん
:2005/05/01(日) 05:46:00
ウィルスってなんであんなに小さいのですか?
417
名前:
デフォルトの名無しさん
:2005/05/01(日) 06:28:06
小さくないよ。
418
名前:
デフォルトの名無しさん
:2005/05/01(日) 13:33:25
>>412
そら心の狭いてぃんかすやろうだけ
419
名前:
デフォルトの名無しさん
:2005/05/01(日) 13:41:39
>昔プログラマをしていた者です。
>>412
こういうやつ一番嫌い。
まず使い物にならん
420
名前:
デフォルトの名無しさん
:2005/05/01(日) 13:45:03
>172
名前:166[] 投稿日:2005/04/23(土) 10:58:31
>
>>167
>昔散々やったことなので、時間が勿体無くて。。
>他の人に聞くと一瞬で解決することが時々あるので質問させてもらいました。
嫌なもの見ちまった
421
名前:
414
:2005/05/01(日) 14:31:34
>>415
すいません、vs32vars.batでどうすればいいんでしょうか?
やりたいことは
c:\>cc hello.c
のような方法でコンパイルをしたいのですが。
422
名前:
デフォルトの名無しさん
:2005/05/01(日) 14:35:51
>>421
コマンドプロンプトで
>vs32vars.bat
を実行すれば
>cl hello.c
でコンパイル出来るようになる。
423
名前:
デフォルトの名無しさん
:2005/05/01(日) 14:48:48
419 :デフォルトの名無しさん :2005/05/01(日) 13:41:39
>昔プログラマをしていた者です。
>>412
こういうやつ一番嫌い。
まず使い物にならん
こいつも使い物にならんな
424
名前:
デフォルトの名無しさん
:2005/05/01(日) 14:52:01
プログラマーなんて一般人から見ればまともじゃないし
偏見のようだがこのスレ見てると遠からずだな
425
名前:
デフォルトの名無しさん
:2005/05/01(日) 14:58:41
>>423-424
政界
426
名前:
デフォルトの名無しさん
:2005/05/01(日) 15:02:01
否定できないものがあるな
427
名前:
デフォルトの名無しさん
:2005/05/01(日) 15:03:50
>>424
だから鎮火すは一部の奴だっつーの。
428
名前:
デフォルトの名無しさん
:2005/05/01(日) 15:10:25
>昔プログラマをしていた者です。
>昔散々やったことなので
入試に失敗した時のいいわけに使えそう。
429
名前:
デフォルトの名無しさん
:2005/05/01(日) 15:33:13
>>428
厨房ですか?
430
名前:
デフォルトの名無しさん
:2005/05/01(日) 15:35:55
自称玄人が教えるスレなの
431
名前:
デフォルトの名無しさん
:2005/05/01(日) 16:00:58
質問です。
VS2003のVC++使ってるんですけど、Win32しかプラットフォームをIDE上からは選べませんよね?
で、インクルード関連の設定をWin32/Win64で切り替えるときにいちいち手動で書き変えるのはあまり現実的ではないとおもうんで
自分でプラットフォームの設定項目を加えたいんですが・・・
どうすれば出来ますか?
Release64は自分で追加出来るのに・・・・・
432
名前:
デフォルトの名無しさん
:2005/05/01(日) 16:05:39
>>431
Win32のウィザードを参考にしながら、Win64のウィザードを作ったらいい。
433
名前:
デフォルトの名無しさん
:2005/05/01(日) 17:27:50
初心者がWin64使うのは想定外なんだろ
434
名前:
デフォルトの名無しさん
:2005/05/02(月) 09:08:34
VC++6で、リリースコンパイル時のみ、
>LIBCMTD.lib(dbgheap.obj) : error LNK2005: _malloc はすでに libcmt.lib(malloc.obj) で定義されています
みたいなエラーがでます。
回避策教えて下さいでつ。
435
名前:
デフォルトの名無しさん
:2005/05/02(月) 09:20:09
LIBCMTD.lib(dbgheap.obj) デバッグ用
libcmt.lib(malloc.obj) リリース用
どっちか1つに
436
名前:
デフォルトの名無しさん
:2005/05/02(月) 11:35:18
>>434
静的リンクするライブラリも、必要ならデバッグビルド用とリリースビルド用を用意汁。
437
名前:
デフォルトの名無しさん
:2005/05/02(月) 12:39:32
どうもクラス、特に派生クラスの使い方が分かりません。
一つのクラスにまとめてしまうと何がまずいんでしょうか。
438
名前:
デフォルトの名無しさん
:2005/05/02(月) 13:44:38
>>437
「一つのクラスにまとめる」という理由で派生クラスにしてしまうのは、あまりよろしくないと思う。
それだったら素直に基本クラスをメンバにした方がいいんじゃまいか…。
派生が威力を発揮するのは、ポリモーフィズム使うときとか。
439
名前:
デフォルトの名無しさん
:2005/05/02(月) 14:21:30
>>437
クラスのメソッド内部がフラグの嵐で読めなくなるから。
複数のパターンを派生で分けとけば、
新しいパターンが増えても派生クラスだけ注意してテストすれば良いが、
フラグ分岐の場合、全ソース注意してテストする必要があるから。
440
名前:
デフォルトの名無しさん
:2005/05/02(月) 14:24:03
なぜよろしくないのだ?
441
名前:
デフォルトの名無しさん
:2005/05/02(月) 15:01:14
昨日から使い始めたド初心者です。
ソリュージョンエクスプローラの枠とスタートページの枠が逆に入れ替わってしまったのですが
どうやったら元に戻りますか?
教えてください、お願いします。
442
名前:
デフォルトの名無しさん
:2005/05/02(月) 15:24:32
>>441
ドラッグ&ドロップ
配置がうまくいかずに滅茶苦茶になってしまったときは
[ツール][オプション][環境][全般] [ウィンドウ レイアウトのリセット]で
443
名前:
441
:2005/05/02(月) 15:36:54
>>442
[ツール][オプション][環境][全般] [ウィンドウ レイアウトのリセット]
これでうまくいきました。 ありがとうございます。
質問してみてよかったです。
444
名前:
デフォルトの名無しさん
:2005/05/02(月) 17:45:19
マルチスレッドのライブラリと
シングルスレッドのライブラリでは、
具体的には何が違うんですか?
445
名前:
デフォルトの名無しさん
:2005/05/02(月) 18:05:01
共有資源がない
446
名前:
デフォルトの名無しさん
:2005/05/02(月) 20:15:58
再入可能かどうか
447
名前:
デフォルトの名無しさん
:2005/05/02(月) 21:39:35
再入不可能だとどうなるの?
448
名前:
デフォルトの名無しさん
:2005/05/02(月) 21:49:42
挙動が予期しないものになる
strtokをマルチスレッド環境で走らせてみればわかる
449
名前:
デフォルトの名無しさん
:2005/05/02(月) 21:49:46
>>447
複数のスレッドが同時に同じ関数を使おうとしたときにまずいことになる。
strtok()の使い方を考えてみるのがわかりやすいかな。
450
名前:
デフォルトの名無しさん
:2005/05/03(火) 05:40:48
たとえば静的変数を使っているような関数は
マルチスレッド用にはできない。
関数に複数のアクセスがあったときに
静的変数の値が予期できないものになってしまう。
そんな単純な理由だったような
451
名前:
デフォルトの名無しさん
:2005/05/03(火) 10:07:14
ファイルのデッドロックが発生している個所を特定するための
手法を教えてください。
452
名前:
デフォルトの名無しさん
:2005/05/03(火) 10:10:50
ここは初心者スレ
453
名前:
デフォルトの名無しさん
:2005/05/03(火) 10:42:09
ケチ
454
名前:
デフォルトの名無しさん
:2005/05/03(火) 11:27:34
ファイルのデッドロックって何?
455
名前:
452
:2005/05/03(火) 12:08:44
>>454
それはオレにも分からん
456
名前:
デフォルトの名無しさん
:2005/05/03(火) 14:26:20
#ifdef TESTDLL_EXPORTS
#define TESTDLL_API __declspec(dllexport)
#else
#define TESTDLL_API __declspec(dllimport)
#endif
#include <atlbase.h>
#include <vector>
class TESTDLL_API Test {
private:
CComBSTR bstr;
std::vector<A> vec;
};
こんな感じでヘッダー作ると
CComBSTR とstd::vectorは_exportキーワードを使え
とワーニングが出るんですが
どうすれば回避できるのでしょう?
457
名前:
デフォルトの名無しさん
:2005/05/03(火) 16:49:45
それは初心者スレの範囲にはいるのかな?
458
名前:
デフォルトの名無しさん
:2005/05/03(火) 21:33:57
>>456
マジレスすると・・・
クラスをexport/importするなゴルァ
459
名前:
908
:2005/05/03(火) 22:16:05
質問です。
void sarch(char *in, char *filepath)
という関数を作成して
int main(void)
{
sarch(配列,"ファイル名");
return(0);
}
といった風に関数呼び出しを行うのですが、
sarchの中でfopenをし、fgetsを使うとエラーが出ます。
原因がわからないのですが
どの辺がおかしいですか?
460
名前:
デフォルトの名無しさん
:2005/05/03(火) 22:22:10
関数名のスペル
461
名前:
デフォルトの名無しさん
:2005/05/03(火) 22:31:23
この板で質問していいのか分からんのですが
VisualC++6.0 だと
テンプレート引数としてテンプレートを指定すると
コンパイルが通りません。
template<class T, template<class> class C> class A{
C<T> a;
};
VisualC++6.0のテンプレート機能が弱いから、と聞いたのですが、
.NET (というかVisualC++6.0以降ではこれしか知らない)とかなら
コンパイル通りますか?
462
名前:
デフォルトの名無しさん
:2005/05/03(火) 22:33:09
>>461
template<class T, class C> class A {
typename C<T> a;
};
VC6だとtypename外した方がうまくいくかも。
463
名前:
デフォルトの名無しさん
:2005/05/03(火) 22:51:33
>>462
「error C2059: 構文エラー : '<'」となりますです。
「class C」だけでは C をテンプレートとして扱えないようです。
「template C<T> a;」(templateキーワードの明示的な指定)としても
駄目ぽでした。
>>462
さんのコードは
>>462
さんの環境でコンパイルできましたか?
ちなみに
>>461
のコードは Bjarne Stroustrup の
「プログラミング言語C++」からの抜粋です。
464
名前:
461
:2005/05/03(火) 22:53:07
463=461です。
上に書いた templateキーワードの明示的な指定は、
正しいかどうか分かりません。いろいろ試行錯誤してみましたが
やりたいことが実現できんとです…。
465
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:17:25
試行錯誤するんなら、コンパイラ変えてみればいいんじゃないか?
それとも手段が目的なんだろうか?
466
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:35:04
コンパイラ替えろって非現実的な話になってきたな
467
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:35:25
すいません。エラーが出たのですが、何処がおかしいのでしょうか?
<html><head><META HTTP-EQUIV="Content-Type" content="text/html; charset=shift_jis">
</head><body><pre><table width=100% bgcolor=#CFCFE5><tr> <td> <font face=arial size=+3>
ビルド ログ
</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5>
</td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>
<h3>------- ビルド開始 : プロジェクト : sample、構成 : Debug|Win32 -------
</h3></pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
コマンド ライン</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0
bgcolor=#FFFFFF> </td><td width=*><pre>一時ファイル "c:\Documents and Settings\ouner\My Documents\Visual Studio Projects\sample\Debug\RSP000002.rsp" を作成しています。内容 :
[/Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /Gm /EHsc /RTC1 /MLd /Fo"Debug/" /Fd"Debug/vc70.pdb" /W3 /c /Wp64 /ZI /TP
".\sample.cpp"]
コマンド ライン "cl.exe @"c:\Documents and Settings\ouner\My Documents\Visual Studio Projects\sample\Debug\RSP000002.rsp" /nologo" を作成しています。
</pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
出力ウィンドウ</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>コンパイルしています...
sample : error PRJ0003 : cl.exe' の起動中にエラーが発生しました。
468
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:36:29
</pre></table><table width=100% bgcolor=#DFDFE5><tr><td><font face=arial size=+2>
結果
</font></table><table width=* cellspacing=0 cellpadding=0><tr><td width=0 bgcolor=#EDEDF5> </td><td width=0 bgcolor=#FFFFFF> </td><td width=*><pre>
ビルドログは "file://c:\Documents and Settings\owner\My Documents\Visual Studio Projects\sample\Debug\BuildLog.htm" に保存されました。
sample - エラー 1、警告 0</pre></table><table width=100% height=20 bgcolor=#CFCFE5><tr><td><font face=arial size=+2>
</font></table></body></html>
エラーが1つだけあるらしいのですが、見付けられません。
警告はなかったです
469
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:38:56
ouner...
470
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:42:01
あっ、その部分は私の名前だったので
書き込むときに変えましたです
471
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:42:41
関係ないが u -> w
472
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:44:08
訂正:owner^^;
473
名前:
デフォルトの名無しさん
:2005/05/03(火) 23:47:28
VBAのような、構文エラーを見付けるデバッグをしたいのですが
すいませんが、手順を教えて下さい
2時間程エラーを探してるんですが、もう目が痛いです
474
名前:
デフォルトの名無しさん
:2005/05/04(水) 00:05:50
>>458
シンボルの付け方に互換性があれば
クラスをエクスポートするのは別に大丈夫でしょ?
MFCとかもあるし。
メンバーにテンプレートのクラスがあるのが問題点で解決方が不明。
475
名前:
デフォルトの名無しさん
:2005/05/04(水) 00:06:32
たびたびすいません
同じソースで秀丸でGUIコンパイルしたら、
無問題だったのですが、どうすれば良い結果が生まれるのでしょうか?
476
名前:
デフォルトの名無しさん
:2005/05/04(水) 00:10:04
とりあえずクマさんの人形に向かって状況を説明してみろ
477
名前:
461
:2005/05/04(水) 00:43:23
>>465-466
VisualC++6.0のままでコンパイル通せる方法があれば儲け物、として
考えてるくらいで、コンパイラを変えることは検討しています。
ただ、変えてみて同じだったらお金の無駄になってしまうので
.NET で
>>461
のコードが通るかどうかが知りたいです。
478
名前:
デフォルトの名無しさん
:2005/05/04(水) 01:16:11
>>476
今から、再インストールおっぱじめたいと思いますです
479
名前:
デフォルトの名無しさん
:2005/05/04(水) 01:25:19
VC++のエディタ(というかIDE)で、右上のポップアップに
関数名が表示されるけど、
今開いているソースファイルのみの関数名の表示は、どうやるんですか
480
名前:
デフォルトの名無しさん
:2005/05/04(水) 01:37:35
>>479
this->で書き始めれば、候補をメンバ関数に絞れる。
481
名前:
479
:2005/05/04(水) 02:54:58
??
ソースファイル中の関数名なんですけど。
他の開発環境では、ソース内の関数が表示されたんですが。
コードの量が増えてきて、
全部まるごと表示されたら、探すの大変だと思うんですが。
482
名前:
475
:2005/05/04(水) 02:56:45
無事ビルド完了しました。
これでようやく寝れます。「イント・ウィン・エーピーアイ・ウィンメイン」とお経のように唱えながら寝ます
483
名前:
458
:2005/05/04(水) 04:02:03
>>459
すべてのソースを晒しなさい。
ここに書くと読むのもあれなんで、自分のWebページで。
>>473
何を意図しているのかよくわからないので、
まずは落ち付いて、わかる文章で書き直してください。
>>474
シンボルの名前の問題だけではないのですよ。
ちょっと考えただけでも、
・C++以外の言語から使うのが難しい
・privateメンバですら追加不可能で、回避手段を予め仕込んでおく必要がある
・virtualどうすんのよ
っていう問題があるのですよ。
後々のことを考えたら、DLLで公開する部分は、
第一引数にオブジェクトのハンドルを渡すようなWin32 APIスタイルにしておき、
それをC++クラスでラップするラッパーのソースを提供したほうがいいと思います。
484
名前:
デフォルトの名無しさん
:2005/05/04(水) 08:34:19
あるいはCOMとしてインターフェイスを公開するようにするとか。
485
名前:
デフォルトの名無しさん
:2005/05/04(水) 08:44:58
>>463
> ちなみに
>>461
のコードは Bjarne Stroustrup の
>「プログラミング言語C++」からの抜粋です。
それはVCの本じゃないからスレ違いだろ
VCを使いたければVCにあったコードを書け
単にそのコードを使いたいだけなら、それにあったコンパイラを使え
>1
.1.3 処理系についてのコメント
>C++言語の一部としてつい最近採用されたばかりの
>機能を使っているサンプルは、一部の処理系ではコンパイルできなかった。
486
名前:
デフォルトの名無しさん
:2005/05/04(水) 10:41:15
>>479
VisualStudioのバージョンは?
つーか、開いているソースファイル内のクラスが左に列挙されていてそのメンバ関数が右に列挙されていると思うのだけど。
>>480
インテリセンスの話じゃないらしいよ。
487
名前:
479
:2005/05/04(水) 10:48:55
ファイル内関数の方が単純で分かりやすいと思うんだけど。
>>486
>>480
ありがとう
488
名前:
デフォルトの名無しさん
:2005/05/04(水) 10:52:02
>>487
なにがありがとうだよ。訳わからねぇことぬかして質問にも答えねぇで一人で勝手に納得してんじゃねぇよ。
こちとら消化不良だぜぃ。
489
名前:
デフォルトの名無しさん
:2005/05/04(水) 11:41:16
うるせえチンカス
490
名前:
461
:2005/05/04(水) 12:15:19
>>485
そのコードが使えるVCのバージョンを探している、ということです。
491
名前:
デフォルトの名無しさん
:2005/05/04(水) 12:24:02
>>490
スレ違い
その本はVCの本じゃない&初心者用の本じゃない
スレ違い&スレ違い
492
名前:
461
:2005/05/04(水) 12:43:00
他で質問します
493
名前:
デフォルトの名無しさん
:2005/05/04(水) 13:50:07
>>483
VCプログラムでVC以外からの利用を考慮するのか
さすがだな
494
名前:
デフォルトの名無しさん
:2005/05/04(水) 14:07:09
グダグダなスレだな
495
名前:
デフォルトの名無しさん
:2005/05/04(水) 14:14:00
だって住人が
496
名前:
デフォルトの名無しさん
:2005/05/04(水) 14:32:31
からあげを
497
名前:
デフォルトの名無しさん
:2005/05/04(水) 14:34:17
>>493
クライアントプログラムがVCとはかぎらんだろ
VBからかもしれないしCかもしれないしDelphiかもしれない
498
名前:
デフォルトの名無しさん
:2005/05/04(水) 15:05:56
VC++でクラスをエクスポートするDLLをVBやCから使うバカが居るんですか?
499
名前:
デフォルトの名無しさん
:2005/05/04(水) 15:14:25
それはいないだろ
500
名前:
デフォルトの名無しさん
:2005/05/04(水) 15:17:00
え?managedなら使えるんちゃうの?
インターフェース用意したりすればunmanagedでも使えなかった?
■過去ログ置き場に戻る■
1-
前250
次250
最新50
DAT2HTML
0.33f Converted.