none
C#.NET object変数に関連付けた配列の次元数を取得したい RRS feed

  • 質問

  • public object ok;

    このオブジェクト変数に、別の関数から

    以下のようなデータが作成されましした。

    内容は以下のように、得られました。

    Console.WriteLine("value: " + ok.ToString());
    Console.WriteLine("length: " + ok.ToString().Length);

    value: System.Int32[,]
    length: 15

    出来れば、Rank関数を使って配列の次元数を求めたいのですが、

    以下では、文法エラーになります。

    Console.WriteLine("Rank: " + ok.Rank());

    okがobjectだからとのことです。

    よろしく、ご教授ください。

    2019年10月25日 3:07

回答

すべての返信

  • Console.WriteLine("Rank: " + ((Array)ok).Rank);
    でいいような。
    2019年10月25日 3:35
  • 補足すると.NET上の配列はSystem.Array型となります。Rankプロパティもここで定義されています。

    # なのでKOZ6.0さんが回答されているようにキャストすれば使えます。


    2019年10月25日 3:56
  • KOZ6.0 さま、

    有難う御座いました。正しく表示されました。

    頂いた、回答の通りでプログラムが動作いたしました。

    これまで、長年VB.NETを使用していましたが、故あって、C#.NETに挑戦していますが、

    勝手が違い、なかなかうまく行きません。

    また、このフォーラムにも、初めて参加させて頂きました。

    参加の礼儀やなども不躾ですが、少しずつ慣れて行きますので、よろしくお願いいたします。

    2019年10月30日 0:42
  • 佐祐理さま、

    補足して頂き、有難う御座いました。

    勉強になりました。これからもよろしくご教授お願いいたします。

    2019年10月30日 0:48
  • rtmsi_MSDNさん、こんにちは。フォーラムオペレーターのHarukaです。
    MSDNフォーラムにご投稿くださいましてありがとうございます。

    本件、皆様より参考になる投稿が寄せられたようでなによりです。

    [回答としてマーク]機能は設定された投稿が後から参照しやすくなりますので、
    同じ問題でお困りの方のためにも参考になった投稿に設定いただけますと幸いです。

    お手数ですが、ご協力の程どうかよろしくお願いいたします。

    引き続きMSDNフォーラムをご利用いただけますようお願い申し上げます。


    MSDN/ TechNet Community Support Haruka
    ~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、 ご協力くださいますようお願いいたします。また、MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。~

    2019年10月30日 1:15
    モデレータ