- PR -

複数のファイルで1つのクラスを作成

1
投稿者投稿内容
dai
ベテラン
会議室デビュー日: 2001/08/28
投稿数: 85
投稿日時: 2002-11-19 11:14
こんにちは。

とても基本的なことをお聞きしている気がしますが、
1つの.csファイルには1つのクラスしか記述できないのでしょうか?
開発環境: Visual Studio .NET (C#)

とても巨大なクラスを作成しようとしています。(約7MB)
最初は1つのファイルとしていたのですが、
開発環境がお亡くなりになってしまい、とても動作できません。

また、複数ファイルに分割し、同じクラス名にすると
 コンパイラ エラー CS0101
 名前空間 'namespace' に 'type' の定義が既に含まれています。
というエラーが発生します。

そんなでかいクラスは設計が悪い!と叱咤されそうですが、
実行速度を求めた結果がこのようになっています。

こんな場合、このようにすればよいなどのアドバイスもお待ちしております。
NothingButXMLInfoSet
大ベテラン
会議室デビュー日: 2002/07/16
投稿数: 116
投稿日時: 2002-11-19 12:39
> 1つの.csファイルには1つのクラスしか記述できないのでしょうか?

ご質問は、「複数の.csファイルに1つのクラスを記述することはできないか?」という意味ですよね?http://www.gotdotnet.com/team/csharp/learn/Future/ここに書いてあるのですが、今まではできませんでした。次期メジャーバージョンには含まれる予定みたいです。

> そんなでかいクラスは設計が悪い!と叱咤されそうですが、
> 実行速度を求めた結果がこのようになっています。

うーん、実行速度ですか。。。クラスをあまり大きくすると、それもやはり実行速度に影響しそうですけどね。。。
dai
ベテラン
会議室デビュー日: 2001/08/28
投稿数: 85
投稿日時: 2002-11-19 13:10
> ご質問は、「複数の.csファイルに1つのクラスを記述することはできないか?」という意味ですよね?

はい、その通りです。

> http://www.gotdotnet.com/team/csharp/learn/Future/ ここに書いてあるのですが、今まではできませんでした。次期メジャーバージョンには含まれる予定みたいです。

ありがとうございます。
次期ですか...。まあ気長に待ってみることにします。

> > そんなでかいクラスは設計が悪い!と叱咤されそうですが、
> > 実行速度を求めた結果がこのようになっています。
>
> うーん、実行速度ですか。。。クラスをあまり大きくすると、それもやはり実行速度に影響しそうですけどね。。。

たしかに...、アセンブリのサイズもでかくなるし...。
やっぱり設計が悪いのかも ;-;

とりあえず現状は複数ファイルで別クラスとしてなんとかしてみます。
ありがとうございました。
1

スキルアップ/キャリアアップ(JOB@IT)