473,513 Members | 13,099 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Inheritance / file locations

Hi,

I know how inheritance works.
But do i have to put all the inherited class files in the same
directory as the class file which inherits is in?? (VB.NET)

When i have a baseclass which i want to use in different solutions, then
i add the class to a solution. The IDE copies the file to the other
solution folder and i have 2 copies of the same class file.

The idea of inheritance is reusable code, but when i have 2 identical
files on different locations do i have to edit them both when something
changes to my baseclass???

Should i use a dll? I know it's a possible solution but not the most nice
one.
Why hasn't MS thought about this?
Has anyone an explanation?

--

================================================== ============
Johnny van Cadsand news ( ) cadsand ! demon ! nl

..:: Up to the Sky and Back ::..
Jul 21 '05 #1
6 1891
They have thought about it. I don't know if you have.

If you add an existing class to a solution, all that means is that VS.NET
copies the file. This has nothing to do with code reusability. Because
then, anyone who wants to use your class, would need your source code??

You are supposed to compile the base class into a DLL, and then use the dll
in other projects. It is the perfect solution - and certainly a lot better
then having multiple copies of the source all over the place or having to
have the source code for a class in order to inherit from it. What company
is going to write a control, if the only way anyone can use it is to have
their source code?

"Johnny van Cadsand" <ne**@nospam.cadsand.demon.nl> wrote in message
news:Xn********************************@216.168.3. 44...
Hi,

I know how inheritance works.
But do i have to put all the inherited class files in the same
directory as the class file which inherits is in?? (VB.NET)

When i have a baseclass which i want to use in different solutions, then
i add the class to a solution. The IDE copies the file to the other
solution folder and i have 2 copies of the same class file.

The idea of inheritance is reusable code, but when i have 2 identical
files on different locations do i have to edit them both when something
changes to my baseclass???

Should i use a dll? I know it's a possible solution but not the most nice
one.
Why hasn't MS thought about this?
Has anyone an explanation?

--

================================================== ============
Johnny van Cadsand news ( ) cadsand ! demon ! nl

..:: Up to the Sky and Back ::..

Jul 21 '05 #2
Marina wrote :
They have thought about it. I don't know if you have.

If you add an existing class to a solution, all that means is that
VS.NET copies the file. This has nothing to do with code reusability.
Because then, anyone who wants to use your class, would need your
source code??

You are supposed to compile the base class into a DLL, and then use
the dll in other projects. It is the perfect solution - and certainly
a lot better then having multiple copies of the source all over the
place or having to have the source code for a class in order to
inherit from it. What company is going to write a control, if the
only way anyone can use it is to have their source code?

Alright...

That's what i thought but it looked strange to me that file copied...

But indeed, you don't need the source!!

Thanks...

--
================================================== ============

Johnny van Cadsand news ( ) cadsand ! demon ! nl

..:: Up to the Sky and Back ::..
Jul 21 '05 #3
"Johnny van Cadsand" <ne**@nospam.cadsand.demon.nl> schrieb:
I know how inheritance works.
But do i have to put all the inherited class files in the same
directory as the class file which inherits is in?? (VB.NET)

When i have a baseclass which i want to use in different solutions, then
i add the class to a solution. The IDE copies the file to the other
solution folder and i have 2 copies of the same class file.
Add the class to one project of type "Class Library" and reference this
project (DLL) from the other projects.
Should i use a dll? I know it's a possible solution but not the
most nice one.


Why not? Sure, for a single class, it doesn't make much sense, but if there
is a set of classes I would add them to a class library.

VS.NET provides a way to reference the file instead of creating a copy of
it: "Project" -> "Add Existing Item..." -> Change the button labeled "Open"
to "Reference File" and press it.

--
Herfried K. Wagner [MVP]
<URL:http://dotnet.mvps.org/>

Jul 21 '05 #4

"Johnny van Cadsand" <ne**@nospam.cadsand.demon.nl> wrote
I know how inheritance works.
OK, now concentrate on learning how to use the tool.... ;-)
But do i have to put all the inherited class files in the same
directory as the class file which inherits is in?? (VB.NET)
No.

When i have a baseclass which i want to use in different solutions, then
i add the class to a solution. The IDE copies the file to the other
solution folder and i have 2 copies of the same class file.
Yes, it will do that if you tell it to.

The idea of inheritance is reusable code, but when i have 2 identical
files on different locations do i have to edit them both when something
changes to my baseclass???
That's not how I'd do it.

Should i use a dll? I know it's a possible solution but not the most nice
one.
Well yes, you should fully design your base class before you put it to
use in a bunch of other apps, but you don't have to.
Why hasn't MS thought about this?
What makes you say that? Again, you should really check into what
the tools can do for you, before you ask why they haven't provided
what you need. What you apparently want is provided for, and its
called linking. You can link any file to your current project simply
by telling VS to link the file.
Has anyone an explanation?


When you link a file to your project, it is left in its original directory
and becomes a part of your project, just like the other files. Changes
you make (and save) to the file are reflected back to the original file
in its original directory.

LFS
Jul 21 '05 #5
Larry Serflaten wrote :
When i have a baseclass which i want to use in different solutions,
then i add the class to a solution. The IDE copies the file to the
other solution folder and i have 2 copies of the same class file.


Yes, it will do that if you tell it to.


I just add an existing class from an other solution to my solution and
the IDE copies it.
I found that...
in a classlibrary it copies the original file but when i add an existing
class to a windows application project it is left in its original
directory and indeed the changes are reflected back to the original
file...

But nevermind the above...

I wonder why it default copies the file when you can link it as well. And
only in a classlibrary.

--
================================================== ============

Johnny van Cadsand news ( ) cadsand ! demon ! nl

..:: Up to the Sky and Back ::..
Jul 21 '05 #6

"Johnny van Cadsand" <ne**@nospam.cadsand.demon.nl> wrote
I wonder why it default copies the file when you can link it as well. And
only in a classlibrary.


I certainly don't know for sure, I wasn't making the decisions, but I
would suppose that it was determined that over the long haul, in
most cases, copying the file instead of linking, would be the choice
most often selected.

You can link the file you want by selecting to add an existing item,
and instead of just clicking on the Open button, click on the down
arrow beside the word Open, and select Link File....

LFS
Jul 21 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
4361
by: AIM | last post by:
Error in msvc in building inheritance.obj to build hello.pyd Hello, I am trying to build the boost 1.31.0 sample extension hello.cpp. I can not compile the file inheritance.cpp because the two...
3
2553
by: Hazz | last post by:
I am just beginning to design a Treeview display (winforms) for wine regions. Problem. Some wine growing regions belong to two counties. Eg. Carneros is in both Napa and Sonoma Counties. Although...
3
1711
by: Chris Kennedy | last post by:
What's the difference between importing a namespaces and inheriting.
6
1138
by: Johnny van Cadsand | last post by:
Hi, I know how inheritance works. But do i have to put all the inherited class files in the same directory as the class file which inherits is in?? (VB.NET) When i have a baseclass which i...
4
12932
by: NileshKorpe | last post by:
Can Somebody please point some of the dis advantages of multiple inseritence. Thanks Nilesh Korpe
3
1669
by: A_Republican | last post by:
I am interested in writing my own secure file deletion program. I want to be able to read and write to my hard drive directly. My application will seach my hard drive for all locations marked for...
0
968
by: PFancy | last post by:
Hi, Not sure if anyone can help. I have writen some code that will allow users to edit a txt file (it's actually an xml file) in notepad. I can get notepad to open correctly with the correct file,...
3
1783
by: =?Utf-8?B?RnJhbmsgVXJheQ==?= | last post by:
Hi all It is maybe a stupid question, but I have some trouble with Inheritance. For example: I create a new class with one form. On this form I place on the bottom a Panel and on this Panel...
6
4926
by: Laphan | last post by:
Hi All I can't get round this because it's a local government thing, but I've done a CMS for a school (in ASP classic) that allows them to upload gifs, jpgs, pdfs and docs to their site for the...
0
7254
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
7432
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
7094
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
5677
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
1
5079
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
4743
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and...
0
3230
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The...
0
3218
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
452
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.