ソリューションエクスプローラからクラスを外す方法とクラスをインスタンス化する際の( )の必要性について

このQ&Aのポイント
  • ソリューションエクスプローラでクラスファイルを削除すると、ファイルはゴミ箱に入りますが、クラスファイルを残したままプロジェクトから外す方法はありますか?
  • クラスをインスタンス化する際、最後の( )は必要ですか?例えば、Cameraクラスのインスタンス化では、カッコをつけずにも動作しますが、このカッコは必要なのでしょうか?
回答を見る
  • ベストアンサー

ソリューションエクスプローラからクラスを外すにはどうしたらいいのでしょうか?

VisualBasic2008 Express Editonでプログラムの勉強をしているのですが、 2点質問があるのですが。 1/ ソリューションエクスプローラからクラスを外すにはどうしたらいいのでしょうか?   ソリューションエクスプローラでクラスファイルを右クリック→削除してしまうと、   クラスファイル自体がゴミ箱の中に入ってしまいます。   クラスファイルは残しつつ、プロジェクトから外したいのですが。 2/ クラスをインスタンス化する時、最後の( )は必要なのでしょうか?    たとえば、Cameraというクラスがあった時、インスタンス化で     Dim camera1 As Camera = New Camera ( )    とするわけですが、     Dim camera1 As Camera = New Camera    と、最後の( )がないままでも動いてしまうのですが。    この()はつけなくてはいけないものなのでしょうか?

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

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

クラスファイルを残したままにしたいのであれば ソリューションエクスプローラでそのクラスを選択して プロジェクト > プロジェクトから削除 を実行しましょう 右クリック > プロジェクトから削除 でも同様の効果があります これをやってしまった場合 このプロジェクト内でそのクラスが使用出来なくなると思いますよ コンパイルされないのだから当然ですが … インスタンス化時の()ですが無くてもかまいません 明示的にNewを呼び出すのだと記述するなどやコンストラクタが引数を伴うような場合は()が必要になるでしょう コード全体の整合性などから()を記述する場合もあると思います

Yuji_Otsuk
質問者

お礼

さっそくのご回答ありがとうございます。 1/やってみたのですが・・・ 「プロジェクトから削除」の項目が出てこないんですよね。  右クリックで「削除」ならあるのですが、そうするとファイルがゴミ箱の中に入ってしまいます。  何かこれを行う以前に設定すべき事があるのでしょうか?  この件引き続きお願い申し上げますm(_ _)m 2/なるほど。よくわかりました!(^ ^)  ありがとうございます。

関連するQ&A

  • VB2005 ソリューションの中にXMLファイルの読込

    VB2005 かなりの初心者です。 現在、XMLファイルを外部(ソリューションエクスプローラに入っていない) で読込みをしているのですが、管理上面倒なのでソリューションエクスプロ ーラ内(同一プロジェクト)にXMLファイルを新規で追加して管理をしよう と思っています。 XMLファイルを外部から読み込む場合には、ファイルパスを指定して簡単に 取得できたのですが、ソリューションへ追加した場合のファイルパス?は どのようになるのでしょうか。 ファイルパスとかではなく、ソリューションエクスプローラのリストから 取得できるようなクラスが用意されているのでしょうか。 ものすごく初歩的な質問かもしれませんが、調べても全く不明だったので ご質問させていただきました。 よろしくお願いいたします。

  • 【ASP.NET】 独自で作成したクラスが認識されない

    お世話になります。ASP.NETに関する質問です。 Visual Studio 2008の開発環境において、 画面右側のソリューションエクスプローラより 右クリックして[新しい項目の追加]をクリックして 新規にクラスファイル(Class1.vb)の作成(言語: Visual Basic)を 行いました。 別のソースファイルより、上記で作成したクラスをインスタンス化 しようとしたところ、コンパイル時に下記エラーが出力されます。 ------------------------------------------------------ 型 'Class1' が定義されていません。 ------------------------------------------------------ クラスをインスタンス化しているソースの記述は以下の通りです。 (test.vb)--------------------------------------------- '変数宣言 Dim cl1 as Class1 = Session.Contents("クラス1") ------------------------------------------------------ Class1.vbの内容は以下の通りです。 (Class1.vb)------------------------------------------- Public Class Class1 Protected _LoginTime As String Public Property LoginTime() As String Get Return _LoginTime End Get Set(ByVal Value As String) _LoginTime = Value End Set End Property End Class ------------------------------------------------------ どなたか原因と対処方法についてご教授願えますでしょうか? 以上、よろしくお願いいたします。

  • .net ソリューションでwebserviceが利用不可

    こんにちは。 いま.net 2003でvb.netの開発をしています。 あるソリューションファイルにwebserviceを参照していますが, ソリューションを開こうとすると, 「開こうとしているプロジェクトはWebプロジェクトです。 URLパスを指定してプロジェクトを開いてください。」 というメッセージが表示されてしまいます。 昨日まではこのようなメッセージが出なかったのですが… さらに開いた後,ソリューションエクスプローラを見ると, あるWebServiceが"利用不可"となっており, 「プロジェクトの再読み込み」をしようとすると, やはり上記と同じ文言のエラーメッセージが表示されてしまいます。 このエラーを解決してメッセージが出ないようにするには どうすれば良いでしょうか? 教えてください。よろしくお願いします。

  • エクスプローラの表示

    プロジェクトファイルと同じファイルにransac.cppというファイルを入れたのですが、ソリューションエクスプローラ上に表示されません。 どうすれば表示できるのかご教授お願いします。

  • Dimensionクラスの使い方

    Javaを始めたばかりの者です。 参考書を読みながら進めていて下記のソースコードで Dimensionクラスを使用している箇所で行き詰まりました。 使われていたのは、以下のコード --------------------------------------------------------------------------------------------------------------------- import java.awt.*; import javax.swing.*; import java.util.*; class xxx{  static public void main(String[] argv){  /*標準入力からmsgに文字列を入力*/  String msg = scan.next();  /*JLabelクラス型のオブジェクト型変数を作成し、インスタンスを生成*/  JLabel label = new JLabel(msg);  /*JLabelのインスタンスのコンストラクタに入力されたmsgのサイズを取得*/  Dimension dim = label.getPreferredSize();  ・・・etc  } } ---------------------------------------------------------------------------------------------------------------------- 自分が今まで使ってきたクラスは下記のような感じで使っていましたが、ここではnewしていない。 これは、どういうことなんでしょうか? クラス名 dim = new クラス名(); インスタンス作成 = コンストラクタの呼び出し。 new演算子はクラスのコンストラクタを呼び出している理解ですが Dimension dim = label.getPreferredSize(); 上記のコードではDimentionクラスのインスタンスは作られていないということだと思います。 ということは、 ここでは何をしているのでしょうか? どなたか、教えて下さい。

    • ベストアンサー
    • Java
  • VB初心者なのでわかりづらい説明になってしまっていますが、宜しくお願い

    VB初心者なのでわかりづらい説明になってしまっていますが、宜しくお願いいたします。 ソリューションに含まれる全クラスのメソッド一覧を取得したいと考えています。 考えている処理は以下の通りです。 For i As Integer = 1 To プロジェクト数   For j As Integer = 1 To クラス数     ' クラスオブジェクトの取得     Dim typ As Type = GetType(プロジェクト名.クラス名) ※     ' クラスが持つメソッドの取得     Dim methods As MethodInfo() = typ.GetMethods()     ' 出力処理   Next Next ソリューションの例 Solution   ├Project1   │  ├Class1_1   │  └Class1_2   ├Project2   │  ├Class2_1   │  ├Class2_2   │  └Class2_3   └Project3      └Class3_1 ただ、ソリューションに含まれるプロジェクトの数、プロジェクトに含まれるクラスの数 の取得方法とプロジェクトに含まれているクラス名の取得方法がわかりません。 よろしければ、教えていただけないでしょうか。 また、他に良い方法があれば教えていただけないでしょうか。 宜しくお願いいたします。 環境はVB2008です。

  • Visual Basic 2008 Express Editon で 

    Visual Basic 2008 Express Editon で VB6のプロジェクトファイルを開こうとすると、アップグレードウィザードが起動せずに、 「選択したファイルをソリューションまたはプロジェクトとして開くことができません。ソリューションまたはプロジェクトファイルを選択してください。」 とのエラーになります。 アップグレードはできないのでしょうか?

  • VB6.0のクラスで、自分自身のインスタンスを作成するメリット

    クラスのメソッドで、自分自身のインスタンスを作成している、コードをよく見かけます。 どんなメリットがるのでしょうか? 簡単に、クラスファイルのコードを書きました。 【A.cls】 Option Explicit Dim pstrID As Long Dim pstrName As String Public Function fncCreate() As Object     Set fncCreate = New clsA  '★自分自身のインスタンスを作成する End Function Public Function fncID() As Boolean     pstrName = "ID" End Function Public Function fncName() As Boolean     pstrName = "STRING" End Function Private Sub Class_Initialize()     pstrID = 0     pstrName = "" End Sub

  • クラスの設定について

    変数をクラスに設定するときのコードの書き方ですが、 sub プロシージャー名() dim m as クラス名 set m = new クラス名 ・・・・ end sub と sub プロシージャー名() dim m as new クラス名 ・・・・ end sub とかいても(簡単なプログラムでは)同じ働きをするのですが 違いはあるのでしょうか。

  • AS3.0のクラス定義に関して質問です。

    クラス定義についていまいちしっくりこないというか、完全に理解しきれていません。 僕が悩んでいるのは、以下の事です。 ステージ上のインスタンス1個1個に、全く別のクラスをそれぞれ定義したいのですが、その方法がわかりません。 そのインスタンスを配置しているレイヤーのタイムラインに直接コードを書くと、「未定義である可能性が高いメソッド addFrameScript の呼び出しです。 」とでてしまい、コードを適用できません。 今はMain.asというASファイルを作り、プロパティのクラスというところ(こういうのがドキュメントクラス?)に『Main』と入力して、そのFLASH上のインスタンス1個だけに対して定義しています。 そのほかのインスタンスにも違う名前で違う処理のASファイルをクラス定義する方法が知りたいです。 何分AS3.0初心者なものですので、とんちんかんなことを言ってるかも知れませんが、 何卒ご教示のほどお願い申し上げます。

専門家に質問してみよう