[C#] Include

Pagina: 1
Acties:

  • Neok_
  • Registratie: Februari 2005
  • Niet online
Eerder heb ik in C++ geprogrammeerd, wat de handig functie had om met

code:
1
#include <filename>

het desbetreffende bestand op die plaats te plakken.

Deze functie kan ik echter niet terugvinden in C#. Google leverde dit relevante resultaat op, maar de link die wordt gegeven is dood :(

//edit:
Ik maak gebruik van SharpDevelop 2.0

[ Voor 6% gewijzigd door Neok_ op 18-10-2006 13:24 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 12-02 17:47

gorgi_19

Kruimeltjes zijn weer op :9

Wat wil je dan includen? code? een bestand?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Neok_
  • Registratie: Februari 2005
  • Niet online
gorgi_19 schreef op woensdag 18 oktober 2006 @ 13:03:
Wat wil je dan includen? code? een bestand?
Een ander cs (C# code) bestand.

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 21:39

TeeDee

CQB 241

Uhm, je maakt een anderecode.cs aan. (Classes en namespaces e.d. worden automatisch voor je gemaakt in Visual Studio).

Als je nu eens het volgende doet:
C#:
1
2
3
4
5
6
7
8
9
10
using System;
using JouwNameSpace;

public class MijnCS
{
     private void MyMethod()
     {
         MijnNameSpace.MijnMethod method = new MijnNameSpace.MijnMethod()
     }
}

Dan ben je er toch?

Heart..pumps blood.Has nothing to do with emotion! Bored


  • Sjaaky
  • Registratie: Oktober 2000
  • Laatst online: 26-01 10:15
Het model dat in c# gebruikt wordt is anders dan c++. Je kan dus ook geen bestanden includen op de c++ manier. In c# is alles in hetzelfde project (zelfde assembly) zichtbaar voor elkaar. Als je code uit andere assemblies wilt gebruiken zul je ze als reference toe moeten voegen. Let ook op het gebruik van namespaces.
Verder is de msdn vast heel behulpzaam in deze.

  • Teunis
  • Registratie: December 2001
  • Laatst online: 03-02 20:22
(vanaf VS C# 2005)
enige manier om meerder files met 1 classe te werken.
partial
voor de class te zetten (zie msdn voor meer info)

maar met welke reden wil je gaan include ?

[ Voor 15% gewijzigd door Teunis op 18-10-2006 13:19 ]

Please nerf Rock, Paper is fine. Sincerely yours, Scissor.
GW2:Teunis.6427


  • Arx
  • Registratie: November 2001
  • Laatst online: 06-02 09:19

Arx

Two Thoughts Ahead!

Sjaaky schreef op woensdag 18 oktober 2006 @ 13:11:
Het model dat in c# gebruikt wordt is anders dan c++. Je kan dus ook geen bestanden includen op de c++ manier. In c# is alles in hetzelfde project (zelfde assembly) zichtbaar voor elkaar. Als je code uit andere assemblies wilt gebruiken zul je ze als reference toe moeten voegen. Let ook op het gebruik van namespaces.
Verder is de msdn vast heel behulpzaam in deze.
Inderdaad. Rechter muisknop op je project -> references.

Copywight 2000,2001,2002,2003,2004,2005,2006,2007 Arx. All wights wesewved. | PS Network tag -> Arx_nl


  • Neok_
  • Registratie: Februari 2005
  • Niet online
Teunis schreef op woensdag 18 oktober 2006 @ 13:18:

maar met welke reden wil je gaan include ?
Overzichtelijkheid: ik zou alle classes graag in een apart bestand willen hebben.

//edit:
Ik maak gebruik van SharpDevelop 2.0

[ Voor 9% gewijzigd door Neok_ op 18-10-2006 13:24 ]


  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 13-12-2024
Als je all je classes in de zelfde namespace zet dan kun je als het goed is gewoon je classes benaderen.

file 1
C#:
1
2
3
4
5
6
7
namespace MyNameSpace
{
  public class MyClass
  {
  }

}


file 2
C#:
1
2
3
4
5
6
7
namespace MyNameSpace
{
  public class MyClass2
  {
  }

}


etc. etc.

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


  • Neok_
  • Registratie: Februari 2005
  • Niet online
4of9 schreef op woensdag 18 oktober 2006 @ 13:28:
Als je all je classes in de zelfde namespace zet dan kun je als het goed is gewoon je classes benaderen.

file 1
C#:
1
2
3
4
5
6
7
namespace MyNameSpace
{
  public class MyClass
  {
  }

}


file 2
C#:
1
2
3
4
5
6
7
namespace MyNameSpace
{
  public class MyClass2
  {
  }

}


etc. etc.
Thx, op die manier werkt het :)

  • whoami
  • Registratie: December 2000
  • Laatst online: 00:37
Neok_ schreef op woensdag 18 oktober 2006 @ 13:22:
[...]

Overzichtelijkheid: ik zou alle classes graag in een apart bestand willen hebben.
Da's geen probleem; je kan iedere class in een aparte file zetten, en als die classes in dezelfde namespace zitten, dan kan je class A direct in class B gebruiken.
Als class A in een andere namespace zit dan class B, dan ga je gewoon moeten laten weten dat class A in die andere namespace zit.
Bv:
code:
1
2
3
4
5
6
7
8
9
using System;

namespace Namespace1
{
      public class A
      {
          ...
      }
}

code:
1
2
3
4
5
6
7
8
9
10
11
using System;

namespace Namespace2
{
      public class B
      {
          private Namespace1.A _a;

         ...
      }
}

of
code:
1
2
3
4
5
6
7
8
9
10
using System;
using Namespace1;

namespace Namespace2
{
    public class B
    {
          private A  _a;
    }
}


Zoals reeds gezegd: C# en C++ moet je niet met elkaar proberen te vergelijken in dit geval. 't Is niet omdat de syntax van C# een beetje op die van C++ lijkt, dat er daarom ook andere gelijkenissen zijn.

https://fgheysels.github.io/


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 08:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

That said, niets weerhoudt je er natuurlijk van om sourcefiles van een willekeurige taal door de C/C++ preprocessor te laten gaan :). Het wordt alleen wel wat lastig werken omdat de compiler niet meer je bronbestanden als input heeft maar intermediate files, wat weer lastige gevolgen kan hebben voor compiler errors en tijdens debuggen (hoewel C# ook de C++ #line directive ondersteunt, dus met C# is het wellicht nog best te doen)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1