C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

空の配列の生成方法

[トピック内 4 記事 (1 - 4 表示)]  << 0 >>

■83103 / inTopicNo.1)  空の配列の生成方法
  
□投稿者/ tarou (1回)-(2017/03/06(Mon) 21:57:00)

分類:[.NET 全般] 

Dim sss() As Single = {}

これはエラーにならないのですが


Function Sing(ByVal x!) As Single()
Return {}
End Function

これはエラーになってしまいます。

空のSingle配列を生成するにはどうしたら良いですか?



引用返信 編集キー/
■83107 / inTopicNo.2)  Re[1]: 空の配列の生成方法
□投稿者/ 魔界の仮面弁士 (1163回)-(2017/03/06(Mon) 22:20:33)
No83103 (tarou さん) に返信
> 空のSingle配列を生成するにはどうしたら良いですか?

お使いの VB のバージョンは何ですか?


> Function Sing(ByVal x!) As Single()
> Return {}
> End Function
> これはエラーになってしまいます。

【VB2012 以上の場合】は、エラーになりません。

【VB2008 以下の場合】は、以下のエラーになります。
error BC30201: 式が必要です。

【VB2010 の場合】は、以下のいずれかのエラーになります。
error BC30332: 'Object' は 'Single' から派生していないため、型 'Object の 1 次元配列' の値を 'Single の 1 次元配列' に変換できません。
error BC36914: 要素の型を推論できません。Option Strict On が設定されているため、'Object' と見なすことはできません。配列の型を指定すると、このエラーが修正される可能性があります。
引用返信 編集キー/
■83109 / inTopicNo.3)  Re[2]: 空の配列の生成方法
□投稿者/ tarou (3回)-(2017/03/06(Mon) 22:28:05)
【VB2010 の場合】は、以下のいずれかのエラーになります。
error BC30332: 'Object' は 'Single' から派生していないため、型 'Object の 1 次元配列' の値を 'Single の 1 次元配列' に変換できません。
error BC36914: 要素の型を推論できません。Option Strict On が設定されているため、'Object' と見なすことはできません。配列の型を指定すると、このエラーが修正される可能性があります。


このエラーです

よろしくお願いいたします。
 
引用返信 編集キー/
■83112 / inTopicNo.4)  Re[3]: 空の配列の生成方法
□投稿者/ 魔界の仮面弁士 (1165回)-(2017/03/06(Mon) 22:53:35)
No83109 (tarou さん) に返信
>> error BC30332: 'Object' は 'Single' から派生していないため、型 'Object の 1 次元配列' の値を 'Single の 1 次元配列' に変換できません。
>> error BC36914: 要素の型を推論できません。Option Strict On が設定されているため、'Object' と見なすことはできません。配列の型を指定すると、このエラーが修正される可能性があります。
> このエラーです

どちらのエラーですか?


> 空のSingle配列を生成するにはどうしたら良いですか?

Function Sing1(ByVal x!) As Single()
 ReDim Sing1(-1)
End Function
Function Sing2(ByVal x!) As Single()
  Return Enumerable.Repeat(x, 0).ToArray()
End Function
Function Sing3(ByVal x!) As Single()
  Return New Single(-1) {}
End Function
Function Sing4(ByVal x!) As Single()
  Return New Single() {}
End Function
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ