東方算程譚

Oriental Code Talk ── επιστημηが与太をこく、弾幕とは無縁のシロモノ。

目次

Blog 利用状況

ニュース

著作とお薦めの品々は

著作とお薦めの品々は
東方熱帯林へ。

あわせて読みたい

わんくま

  1. 東京勉強会#2
    C++/CLI カクテル・レシピ
  2. 東京勉強会#3
    template vs. generics
  3. 大阪勉強会#6
    C++むかしばなし
  4. 東京勉強会#7
    C++むかしばなし
  5. 東京勉強会#8
    STL/CLRによるGeneric Programming
  6. TechEd 2007 @YOKOHAMA
    C++・C++/CLI・C# 適材適所
  7. 東京勉強会#14
    Making of BOF
  8. 東京勉強会#15
    状態遷移
  9. 名古屋勉強会#2
    WinUnit - お気楽お手軽UnitTest

CodeZine

  1. Cで実現する「ぷちオブジェクト指向」
  2. CUnitによるテスト駆動開発
  3. SQLiteで組み込みDB体験(2007年版)
  4. C++/CLIによるCライブラリの.NET化
  5. C# 1.1からC# 3.0まで~言語仕様の進化
  6. BoostでC++0xのライブラリ「TR1」を先取りしよう (1)
  7. BoostでC++0xのライブラリ「TR1」を先取りしよう (2)
  8. BoostでC++0xのライブラリ「TR1」を先取りしよう (3)
  9. BoostでC++0xのライブラリ「TR1」を先取りしよう (4)
  10. BoostでC++0xのライブラリ「TR1」を先取りしよう (5)
  11. C/C++に対応した、もうひとつのUnitTestFramework ─ WinUnit
  12. SQLiteで"おこづかいちょう"
  13. STL/CLRツアーガイド
  14. マージ・ソート : 巨大データのソート法
  15. ヒープソートのアルゴリズム
  16. C++0xの新機能「ラムダ式」を次期Visual Studioでいち早く試す
  17. .NETでマンデルブロ集合を描く
  18. .NETでマンデルブロ集合を描く(後日談)
  19. C++/CLI : とある文字列の相互変換(コンバージョン)
  20. インテルTBBによる選択ソートの高速化
  21. インテルTBB3.0 によるパイプライン処理
  22. Visual C++ 2010に追加されたSTLアルゴリズム
  23. Visual C++ 2010に追加されたSTLコンテナ「forward_list」
  24. shared_ptrによるObserverパターンの実装
  25. .NETでマンデルブロ集合を描く(番外編) ── OpenCLで超並列コンピューティング
  26. StateパターンでCSVを読む
  27. 状態遷移表からStateパターンを自動生成する
  28. 「ソートも、サーチも、あるんだよ」~標準C++ライブラリにみるアルゴリズムの面白さ
  29. インテルTBBの同期メカニズム
  30. なぜsetを使っちゃいけないの?
  31. WPFアプリケーションで腕試し ~C++でもWPFアプリを
  32. C++11 : スレッド・ライブラリひとめぐり
  33. Google製のC++ Unit Test Framework「Google Test」を使ってみる
  34. メールでデータベースを更新するココロミ
  35. Visitorパターンで遊んでみたよ
  36. Collection 2題:「WPFにバインドできる辞書」と「重複を許す検索set」
  37. Visual C++ 2012:stateless-lambdaとSQLiteのぷち拡張
  38. 「Visual C++ Compiler November 2012 CTP」で追加された6つの新機能

@IT

  1. Vista時代のVisual C++の流儀(前編)Vista到来。既存C/C++資産の.NET化を始めよう!
  2. Vista時代のVisual C++の流儀(中編)MFCから.NETへの実践的移行計画
  3. Vista時代のVisual C++の流儀(後編) STL/CLRによるDocument/Viewアーキテクチャ
  4. C++開発者のための単体テスト入門 第1回 C++開発者の皆さん。テスト、ちゃんとしていますか?
  5. C++開発者のための単体テスト入門 第2回 C++アプリケーションの効率的なテスト手法(CppUnit編)
  6. C++開発者のための単体テスト入門 第3回 C++アプリケーションの効率的なテスト手法(NUnit編)

AWARDS


Microsoft MVP
for Visual Developer - Visual C++


Wankuma MVP
for いぢわる C++


Nyantora MVP
for こくまろ中国茶

Xbox

Links

記事カテゴリ

書庫

日記カテゴリ

VBが好きになれないワケ(のひとつ)

VBでの配列宣言って二通りあるんだー

Dim array() As Integer ' 変数側にカッコ
Dim array As Integer() ' 型側にカッコ

...ちょい待ち。ってことは、だ。

Class Foo
  Private value As Integer
  ' 引数を持つコンストラクタ
  Sub New(ByVal v As Integer)
    value = v
  End Sub
  ' 引数のないコンストラクタ
  Sub New()
    value = 0
  End Sub
End Class

なんてのがあるときに:

Dim v1() As Foo
Dim v2() As New Foo(3)
Dim v3(3) As Foo
Dim v4 As Foo() = {New Foo(1), New Foo(2)}
Dim v5() As Foo = {New Foo(1), New Foo(2)}
Dim v6 As Foo()
Dim v7 As New Foo()
Dim v8 As Foo(3)
Dim v9 As New Foo(3)

さて、どれがスカラでどれがベクタ(配列)でどれが構文エラーか
ぱっと見でわかるのか?!

構文を二通り用意したのに加え、
メソッド呼び出しと配列のどっちも丸カッコで表記するから
こーゆーマンドクセーことが起こるわけよね。

投稿日時 : 2008年5月6日 1:42

コメントを追加

# re: VBが好きになれないワケ(のひとつ) 2008/05/06 7:37 ゆーち

ちゃんと知ってから指摘されるあたりが立派です。
あちきは、VB10年以上書いてませんなぁ・・・。
んで、どーして嫌いになったのかを思い出そうとしても思い出せないくらい忘れてます。(爆

最近は中途半端な継承が書けるようになっているらしいですね・・・

# re: VBが好きになれないワケ(のひとつ) 2008/05/06 10:15 片桐

Type宣言の後ろに()なんて、「書けるけどやんない」
だって、動的配列だとできるけど固定配列じゃ動かないなんてハンパなことイラン。どっちかにしとき。
というのが本音w

もう紳士協定の世界なのかしらん(笑)

# re: VBが好きになれないワケ(のひとつ) 2008/05/06 11:39 かるあ

会社でも似たようなことを言われた記憶が。。。
最初にちゃんと決めときましょう。

中途半端な継承って何だろう?????

# re: VBが好きになれないワケ(のひとつ) 2008/05/06 13:49 Craf

VB6のインターフェース継承のことでしょうか。
VB.NETはちゃんと.NETのまともな継承(?)が出来るはずです。

# re: VBが好きになれないワケ(のひとつ) 2008/05/06 23:01 はつね

片桐さん案に1票

# re: VBが好きになれないワケ(のひとつ) 2008/05/07 8:37 επιστημη

> Type宣言の後ろに()なんて、「書けるけどやんない」

んむ。わざわざ災厄を呼び込むことはありませんな。
とはいえ、型側に() は"C#に準じる"って意味では変なことじゃない。

配列に()じゃなくて[]使えばちっとはマシになんのかな:

Dim v As Foo[]
Dim v As Foo[3]
Dim v As New Foo[] { New Foo(1), New Foo(2) }
Dim v As Integer[] = { 1, 2, 3 }

これなら明快よね。

# re: VBが好きになれないワケ(のひとつ) 2008/05/07 10:17 じゃんぬねっと

VB では [] は名前回避に使うのよね。

私は型名に () をつける派。

# re: VBが好きになれないワケ(のひとつ) 2008/05/07 18:00 アクア

私は型名には()を意識して付けないようにしていました。

タイトル
名前
URL
コメント