• ベストアンサー

VB.netの定義の違いについて

VB.netの定義の違いについて こんにちは、 VB.netの定義に  As DateTimeと、  As Nullable(Of DateTime) とが、あるのですが、 これはどう違うものなのでしょうか。 As Nullable(Of DateTime)から As DateTimeへデータをそのまま(変換せずに)渡すことは出来たのですが、 違いが分かりませんでして。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

Googleで「Nullable(Of DateTime は」で照会してください。「は」は日本語記事を出すために、添えてやってみました。 http://uchukamen.com/VisualStudio/VSHistory.htm のNullable型ほか多数の記事が出ます。 http://www.weblio.jp/content/Nullable.Value+%E3%83%97%E3%83%AD%E3%83%91%E3%83%86%E3%82%A3 など。

関連するQ&A

  • VBとVB.NETの違いは?

    タイトルそのままですが、VBとVB.NETの違いを教えてください。 書店に「VB」・「VB.NET」の2種類の本が売られています。

  • VB6.0とVB.NETの違い

    学校の実習での復習で分からないところがありまして 文献を調べたのですが、解決しなかったので教えてください。 最近VB.NETを使う機会が多くなりまして、VB6.0との違いについて悩んでおります。 かつて、VB6.0で基礎的な参考書にデータコントロールを使用してのデータベース(エクセルを用いての)を作成したことがあったのですが、VB.NETにしてからは、同じ方法でのアプリケーションの作り方(データコントロールとエクセルを使っての方法)がわからなくなってしまいました。 どなたか、教えてください。おねがいします。

  • VB6.0とVB.NETの違いについて

    初めて2日目です 会社の研修でVB6.0をやることになり 参考書を片手に悪戦苦闘しています 学生のころにVB.NETをかじったことがあるのですが 割と似ているところがあったりして戸惑っています VB.NETの癖で構文してしまうのでエラーがたくさん出てしまいます そこで皆さんにお聞きしたいのですが VB6.0とVB.NETの違いを教えていただきたいのですが お聞きしたいことは 1)VB.NETとVB6.0の機能や用途についての違い 2)VB.NETとVB6.0で共通で使える関数 3)逆に互換性のない関数(VB6.0では使えないもの) 4)(あれば)同じ記述で違う機能の関数 5)上記とは逆に違う記述で同じような機能を持つ関数 以上のことをお聞きしたいです 質問の内容をもう少し具体的にかければよかったのですが 学習を始めて間もないので抽象的ですいません

  • vb.netとVB6の違いはフレームワークを使うかどうかでしょうか?

    vb.netとVB6では文法も違いますが 最大の違いは vb.netはフレームワークを使う という認識であってますか?

  • VB6では、Applicationは未定義なのでしょうか?

    VB6を使ってプログラムを書いているのですが、以下のソースの部分で エラーになりました。 Dim winname As String winname = Application.Caption <-- Applicationが未定義?  コンパイルエラー 変数が定義されていません。 というエラーメッセージが表示されます。 VB6では、Applicationは未定義なのでしょうか?

  • VB.NETとC#.NETの違いは何ですか?

    VB.NETとC#.NETの違いは何ですか? .NET Frameworkのクラス、メソッド、プロパティ等が分かれば、 VB.NETもC#.NETも大して違いはないと聞きました。 一体どういうことでしょうか?

  • VB.Netの違い

    VB.Netに2005と2008と2010の3つがあります。 当然新しくなるにしたがって便利になっていると思いますが、 どの程度違いがあるのでしょうか。 あまり違いがないようならオークションで安価で手に入る 2005辺りから始めてみたいと思います。

  • VB6.0 VB.NET2003とのクラスの違い

    こんにちは VB6.0でデータベースのソフトを作成しています。 当初VB6.0はVB.NETと違い完全なオブジェクト指向言語ではないと聞いていたので、 フォームの画面ごとに検索、追加、更新、削除、入力チェック,印刷のコードを書いていこうとしました。 しかし、最近そうでもないことがわかりました。 そこで、画面ごとではなく機能ごとに検索、追加、更新、削除、入力チェック,印刷のクラスモジュールをつくり、 どこに何が書かれているかわかるようにコーディングしたいと思います。 VB.NET2003は学生のころやっていたのですが、VB6.0は最近やりだしたのでよくわかっていません。 VB6.0の入門書をみてもクラスについては2~3ページしか触れていません。 VB.NET2003にはできるがVB6.0にはできないクラスの大きな違いを教えてください。 いまのところコンストラクターとオーバーロードはできないということだけわかっています。

  • VB.netの配列とVB6の配列の違い

    VB6で画面を作成し、演算処理を行うDLLをVC6で作成しています。 下記のコードでVB6でSingle型の2次元配列を宣言しま、VCのDLLでエクスポートしている関数に渡 します。 VC6DLL側のコード---------- EXPORT void __stdcall TESTFUNC (float *pfData,long nSize{ } VB側のコード---------- 宣言 Declare Function TESTFUNC Lib "TEST.dll" (ByRef pfData As Single, ByVal nSize As Long) As Long 配列宣言 Public sngDat(999,1) as single 呼び出し TESTFUNC sngDat(0,0),1000 このように呼び出した場合、VC6のTESTFUNC にブレークポイントを設定し、停止するとpfDataの ポインタをインクリメントした場合、sngDat(0,0),sngDat(1,0),sngDat(2,0)と、1次元目の添え字を インクリメントした状態になるように、メモリに格納されています。 この動作を前提として、VB.net側でも同じように呼び出してみました。 VB.net側のコード---------- 宣言 Declare Function TESTFUNC Lib "TEST.dll" (ByRef pfData As Single, ByVal nSize As Integer) As Integer 配列宣言 Public sngDat(999,1) as single 呼び出し TESTFUNC(sngDat(0,0),1000) VC側は全く同じコードを利用するとします。 同じように、VC6のTESTFUNC にブレークポイントを設定し、停止するとpfDataの ポインタをインクリメントした場合、sngDat(0,0),sngDat(0,1),sngDat(1,0)と,sngDat(1,1)、と1次元目の添え字を インクリメントせず、2次元目の添え字をインクリメントした状態になるように、メモリに格納されています。 VB6→VC6のDLLの場合の配列渡しと、VB.net→VC6のDLLの場合の配列渡しで違いがあるのは 何故でしょうか?また、VB.net側の配列渡しの仕様を、VB6側の仕様に合わせる方法は無いのでしょうか? よろしくお願いいたします。

  • VBのバージョンの調べ方&VB5からVB.net2008にコンバージョンする方法

    VBのバージョンを調べたいと思っているのですが、どのファイルを開けば確認出来るのでしょうか? こちらにはVB.net2008しかないので、テキストエディタでVBのソースファイルを開いて確認するしかないのかなぁと思っています。 拡張子がfrmのファイルを開いて見た所、1行目に「VERSION 5.00」と書かれていたので、VB5だと勝手に思っています。 それと、VB5からVB.net2008に変換しようと思っているのですが、VB6からVB.netへの変換はVBUpgrade.Exeというコマンドを使えば変換出来るのは分かったのですが、 VB5から変換する場合は、まずVB5からVB6に変換する必要があるという事がネット上に書いてありました。 VB6でVB5プロジェクトを開いて保存すれば、変換出来るみたいなのですが、VB.net2008しか所有していないので、VB5からVB6に変換する方法が分かりませんでした。 他に方法はありますでしょうか? よろしくお願いします。

専門家に質問してみよう