Visual Studio 2005スレ Part19at TECH
Visual Studio 2005スレ Part19 - 暇つぶし2ch894:デフォルトの名無しさん
07/04/07 15:14:33
>>877
そだな。少し笑えた。
クラスの前は、関数を資産化なんてことも流行ったが、
所詮使い捨て。
既存を理解してる時間があったら書いたほうが早い。

895:デフォルトの名無しさん
07/04/07 15:35:15
>>893
DBの種類によると思うけど、DB側の設定で解釈できるようになる場合があるよ。
それか、クライアント側OSの地域の設定で日付の表示形式を'2007-01-01'で試してみたら。

896:デフォルトの名無しさん
07/04/07 20:47:59
コネクションストリングでDateTimeFormatとか指定してもダメなんだろうか・・

897:デフォルトの名無しさん
07/04/07 21:56:23
VC++2005 WinXPProを用いているものです。
プログラミングそのものではなく、関連ツールに関する質問です。

実は、あるソースコードのバグを修正する仕事を請け負いまして、それをやっているところなのですが、凄いコードなんです。
もう、バグだらけで……例えば、

hFile = ::CreateFile(略);

//ファイルオープンに失敗したとき
if (hFile == NULL)
{
//略
}

などと言うコードが平気で書いてあります。CreateFileで失敗したときにNULLは返ってこないのですが……
こんなコードを普通に書いているんです。あとよくありがちなのが、
char* pTemp = new char[255];
//略
delete pTemp;

普通、配列でnewしたやつはdeleteも配列だと思うんですけど……

と、こんな間違い(?)が多々あって、これを全部直すと思うと気が滅入ります。
どなたかいいツールをご存知の方がいたら教えてください。

よろしくお願いします。

898:デフォルトの名無しさん
07/04/07 22:02:19
さらに、孫請負に丸投げして、ピンハネする。

899:デフォルトの名無しさん
07/04/07 22:04:04
笑ってしまった。いやー世の中にはそんな世界があるんだ。

900:デフォルトの名無しさん
07/04/07 23:18:12
要するに、請け負い先がとんでもないソース修正するのイヤだから
>>897に依頼してきたってことか。
やるなら、相当ふんだくるしかあるまい。

そういうツールがあるなら俺も知りたい。
手軽に手に入るものなら、そもそも依頼なんてこないんじゃなかろうか。

901:デフォルトの名無しさん
07/04/07 23:22:01
>>897
・#define NULL INVALID_HANDLE_VALUE
・deleteをオーバーライドしてdelete []を呼ぶ。

902:デフォルトの名無しさん
07/04/07 23:22:22
>>897
いや、delete[]でも不十分。
new[]したものは、解放されない事態が起きないようにする(特に例外安全を考慮する)ために
boost::shared_array, scoped_arrayまたはそれに準じるものに入れるべき。


903:デフォルトの名無しさん
07/04/07 23:26:07
>>897
QACとかCodeWizardみたいに、問題箇所を警告してくれるツールなら知っているけど、自動修正は知らない

あとはコンパイルオプションに、オペレータのオーバロードを使っていたらコンパイルエラー、
とかの細かい指定ができたら、それ使ってみたらどうだろう。VCは出来たかどうか知らないけど。

904:デフォルトの名無しさん
07/04/07 23:27:36
>>902
kwsk!!
開放されない事態が起きないようにするって、boost以外でやるとすればどうする?

905:デフォルトの名無しさん
07/04/07 23:28:20
0xまで待つ

906:デフォルトの名無しさん
07/04/08 00:11:13
マネージ型を使う。または、C#またはJavaを使う。

907:デフォルトの名無しさん
07/04/08 00:22:04
>>904
shared_arrayやscoped_arrayのクローンを自分で作る。
ようは専用のクラスを作ってそのデストラクタの中でdelete[]すればいい。

根本的にnew[]しないと言う方向性ならstd::vectorを使うなどといった手もある。

908:デフォルトの名無しさん
07/04/08 00:27:47
まずは auto_ptr と vector が基本だろ。

909:デフォルトの名無しさん
07/04/08 00:50:11
がくがく

910:デフォルトの名無しさん
07/04/08 00:52:18
これだな。
URLリンク(www.s34.co.jp)

vectorは内部メモリが連続してる事を(仕様で)保証してくれているので汎用性あるよ。
メモリ制限きつい環境じゃなければ使ったらどうだ。

911:897
07/04/08 02:15:12
>>903
そのツールを検討してみます。

>>902
うーん、勉強になります。

912:デフォルトの名無しさん
07/04/08 05:51:50
教えて欲しいのですが
Visual Studio 2005 SDK 2007.02
ってのをインストールしてみたんですが
何が更新されてるんでしょうか
sampleのIDEのCSharpのReference.MenuAndCommands
っていうのを試しにビルド実行したんですが
新たにVS2005が立ち上がっただけで、何がどうなったのでしょうか
初心者の質問ですみませんが
意味のわかる人、教えてください

913:デフォルトの名無しさん
07/04/08 11:43:59
>912
>何がどうなったのでしょうか

そんなことオレが知るか。キミのパソコンだろ。(´ω`;)

URLリンク(www.microsoft.com)
ココ読めば回答になる?


あと自分が書き込んだ文章を
第三者の観点でもう一度読んでみてください。


914:デフォルトの名無しさん
07/04/08 12:56:13
>>912
一つ目の質問は、VS2005のSDKが2007年2月版に更新されています。
二つ目の質問は、新たにVS2005が立ち上がっただけと思われます。
次にあなたのとる行動はただ一つです。付属のMSDNドキュメントを最初からゆっくり読むことです。
そうすれば、ほとんどの疑問が解決するでしょう。


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch