Operator Overloading In Getting Some Kind Of Compatibility?
Jul 15, 2010
I'm working together with someone on a project, but I'm writing code in VB.Net, and hes coding in VC++. I'm trying to get some kind of compatability going on, so I'm putting my support classes into a VB dll. I've tested it a little, and it seems that all of the functions work, but the operator overloading that I did in VB doesnt seem to carry over to C++.
View 2 Replies
ADVERTISEMENT
Sep 9, 2009
What scenarios would you consider operator overloading in .net?
View 5 Replies
Jan 9, 2010
i would like to hijack the assignment operator and do some customization before an instance of my class is assigned.
example:
Dim A as New MyClass
Dim B as MyClass = A
i want custom the behavior of = is that possible?
View 9 Replies
Aug 21, 2009
For good reasons I would like to have something like truckA = truckB + truckC where only the loads of the trucks are added, not the license plate numbers. Also I don't really want to return a new object (lots of overhead), just change one or two of the properties. Only thing I can come up with is truckA.Load = truckB.Load + truckC.Load, or at best truckA.Load = truckB + truckC which still doesn't look elegant, and - worse - still requires the creation of a new Load object.(this is just a way of stating my problem; the real objects are quite big and complicated) Currently I have a Sub isSumOf so the code reads TruckA.isSumOf(truckB, TruckC)
View 4 Replies
Jan 16, 2009
I've started to use a Vista machine for development. In case it is significant: I'm using MSBee so that I can code in the Visual Studio 2005 IDE while still building against the 1.1 framework.On the Vista machine, when I tried to build a particular vb project, I got this error:
error BC30464: Namespace or type'Compatibility' in the project-level Imports 'Microsoft.VisualBasic.Compatibility' cannot be found.
The same project built fine on my old XP machine. I checked in this folder on my Vista machine:
C:windowsmicrosoft.netFrameworkv1.1.4322
...and sure enough, "Microsoft.VisualBasic.Compatibility.dll" was missing. So was "Microsoft.VisualBasic.Compatibility.Data.dll". Copying them from my XP machine to my Vista machine allowed me to build the project successfully.I'm just a bit puzzled as to why this happened. Why was "Microsoft.VisualBasic.Compatibility.dll" missing? I'm also not very comfortable with my chosen solution - copying the DLL manually. It works, but surely there must be a better way.
As far as the configuration:
Vista:
.Net Framework 1.1
.Net Framework 1.1 SP1
.Net Framework 1.1 SDK
[code]....
View 1 Replies
Jan 27, 2010
I am tightening up my coding with the Option Strict set to ON. It has now produced alot of errors. An example of this is:
If AllocatedDGV.Rows(i).Cells("RoomNumber").Value = RoomsAvailableDGV.Rows(j).Cells("RoomName").Value Then
It gives me the following error: Option Strict On disallows operands of type Object for operator '='. Use the 'Is' operator to test for object identity.
View 6 Replies
Nov 20, 2009
I have a module with code that refers to controls on form1 form1.textbox1.text 'after adding the sub new overload below to my form my module gives me "reference to a non shared member requires an object reference" why is that? [code]
View 9 Replies
Jul 28, 2011
passing a variable to another formI have a module with code that refers to controls on form1form1.textbox1.text 'after adding the sub new overload below to my form my module gives me "reference to a non shared member requires an object reference"
View 2 Replies
Apr 6, 2012
I need to write an interface to get data to/from our data files.
We have a low level class that holds field values for each record read from the files.
This just holds two values, the value read from the file (DBValue) and the updated value that may need to be written back to the file (CurrentValue).
These values may be any of the standard value types (integer, date etc) or a string.
Either value (DBValue or CurrentValue) may be null if not defined.
I have written the class to manage this data which works fine while option strict is NOT on.
But we have an office policy of having option strict on all the time.
When I put option strict on, my object value comparisons fail with the error: "Option Strict On disallows operands of type Object for operator '='. Use the 'Is' operator to test for object identity."
Question, how should I change the following code to handle option strict on ...
This is all running on Visual Studio 2010
[Code]...
View 1 Replies
Mar 10, 2009
Possible Duplicate: Is there a conditional ternary operator in VB.NET?
Can we use Coalesce operator(??) and conditional ternary operator(:) in VB.NET as in C#?
View 5 Replies
Sep 23, 2010
I have a base class with the the following enum and property:
[Code]...
First off, how do I do this - is it by simply overloading it? And secondly will my original property pick up the new enum automatically when using the derived class or will I need to overload that too?
View 2 Replies
May 12, 2012
maybe it's not a method exactly. here's what I'd like to do:
Private _Columns As ArrayList
Public Property Columns() As ArrayList
Get[code]....
which would allow me to conveniently set the property by assigning to it various kinds of collection types... except, I can't do it because apparently the Set method has to take an argument of the type of the property itself... I get the complaint:
'Set' parameter must have the same type as the containing property
is there a way to do this?
View 2 Replies
Sep 28, 2011
I wanna overload the ShowDilog for my form. I wanted to clarify whether the Owner should be passed as Value or Reference.
View 2 Replies
May 3, 2012
I am having a problem convincing Visual Studio and the compiler to use the correct method overload, possibly because of inheritance.
Given these objects:
Public Class Matrix
...
End Class
[code]....
View 2 Replies
Jan 26, 2010
I have a weird situation. I have a C++ code that overloads the +,-,* operators and exports them in a .DLL file. Now, I want to import those overloaded operators from within VB.NET code. So it should be like this:
<DllImport("StructDLL.dll")> Public Shared Function
Operator +(ByVal a1 As A, ByVal a2 As A) As A
End Function
So what I'm trying to do above it just import the lovely overloaded operator + from the DLL.Note that the operator is already overloaded from inside the DLL, so should I import it as a Function or as an Operator like this?
<DllImport("StructDLL.dll")> Public Shared
Operator +(ByVal a1 As A, ByVal a2 As A) As A
End Operator
The overloaded plus operator is supposed to add structs. So the DLL is programmed to work on structs (C++) and I want to import it in VB.NET to work on Structures.
View 1 Replies
May 20, 2011
I need type parameter overloading as such:[code..]
so that i can New Map(Of Human) and the compiler will automatically match it to Public Class Map(Of TKey, TValue) and if i new Map(Of String) the compiler will automatically match it to Public Class Map(Of TKey As IEquatable(Of TKey), TValue) (since String is an IEquatable(Of String))
Right now my solution is to give the class different names as such:[code...]
View 2 Replies
Nov 12, 2008
I'm trying to overload several functions. These are first defined in an interface:
Code:
Namespace Scripting
Public Interface IGlobalFunctions
Overloads Function InOutBox(ByVal messageBoxText As String) As DialogResult
Overloads Function InOutBox(ByVal messageBoxText As String, ByVal caption As String) As DialogResult
[Code] .....
It complies and runs.. But I can only use the first version of InOutBox when I try to use the next one I get an error telling me: "Wrong number of arguments or invalid property assignment".
View 1 Replies
Aug 2, 2010
i recently discovered a nice feature called overloading, now the question is can i also do that for outputs? for example i want to call a function that would automatically return the datatype i assign the function toright now im geting an error saying "blabla and blabla cant overload eachother because they only differ by return types
View 3 Replies
Sep 14, 2011
I have a class that implements an interface. Other objects will get an instance via a method like:
Dim AU1 as IAUC = GetAU(<some GUID>)
Dim AU2 as IAUC = GetAU(<some other GUID>)
What I would like to be able to do is this:If AU1 = AU2..The parts of the class that make up the interface could be equal when the rest of the class is not, and the equality of the interface objects (if you can call them that) is complicated. Several fields have to be compared in odd ways.One option I have is to just add an Equality method to the interface, which would work, but I would rather overload the = and <> operators. As far as I can see, you cannot overload operators as part of an interface, but I was hoping that I had overlooked something.
View 2 Replies
Aug 5, 2009
I have a problem with the VB.NET compiler failing to compile a class (in a separate C# assembly) which contains two overloads of a method with generic arguments. The equivalent code in C# compiles against the same assembly with no errors. Here are the two method signatures:
protected void SetValue<T>(T newValue, ref T oldValue)
protected void SetValue<T>(T? newValue, ref T? oldValue) where T : struct
Here is the code to three assemblies that demonstrate the problem. The first is the C# assembly with a Base class that implements the generic methods. The second is a C# class derived from Base and calls both overloads of SetValue correctly. The third is a VB class also derived from Base, but fails to compile with the following error message:
[Code]...
Am I doing something wrong in the VB code, or are C# & VB different when it comes to generic overload resolution? If I make the method arguments in Base non-generic then everything compiles correctly, but then I have to implement SetValue for every type that I wish to support.
View 2 Replies
May 18, 2012
This is a general question about Object Orientation and specifically overloading functions in .NET (or any other framework or language). I am looking at an application that has a lot of duplicate code. For example, have a look at the following functions: [code] I would of thought that best pratice would be to put: //code that is specifically relevant to Test1 variable in a separate function as it is common in both functions.
View 2 Replies
Dec 7, 2009
Can someone on the VB language team explain why a function result type is not part of the parameter signature?If it were then function overloads would also work for functions that only differ by the result type. In some cases, this is useful (aka cleaner code) especially when you have strongly typed data.
Other languages have this and implement it by considering the function result as an OUT parameter either as param 0 or at the end of the param list (stack) so existing type matching verification can be performed by the compiler.
In VB, the workaround is just messy and would be easily fixed by a language change. This example is overly simplified and not meant as a solid justification for the request Say you have a parse requiirement that takes a comma delimited string in the form: "31,32,33,34" or "bob,carol,ted,alice"
In you code,
[Code]...
View 1 Replies
Oct 7, 2011
I have recently come across some code that has the following. First there is a Interface with the following function Function Validate() As Boolean. That interface is then implemented in the an 'ABSTRACT' class like this.
Public MustOverride Overloads Function Validate() As Boolean Implements IBusinessEntity.Validate
Question 1: Why use Overloads in the Abstract class implementation.
Question 2: The Abstract class is then inherited into a class (TestClass). In TestClass the Validate function is implemented as follows Public Overloads Overrides Function Validate() As Boolean. I understand the Overrides keyword is to insure that this is the version of the Validate that you want called and not the Abstract class version but why again use the keyword Overloads?
From what I understand you can overload a constructor of a class by simply changing the constructor signature. Also, you overload Methods and Properties of a class by using the Keyword Overloads. But why do it when your implementing an Interface method, or an Abstract Class method that's inherited.
View 2 Replies
Dec 3, 2010
We generated a class from an XML file a while back. I think we used xsd.exe.
One of the main node collections in the XML file was rendered as:
<System.Xml.Serialization.XmlElementAttribute("PRODUCT")> _
Public Property PRODUCT() As PRODUCT()
Get
Return Me.pRODUCTField
[CODE]...
And sure, there's PRODUCT class defined later on, and it worked fine. Serialized and deserialized fine. Didn't need to worry about it or manipulate it. Only now we have to revisit and manipulate the data.
But what kind of collection (array?) is Public Property PRODUCT() As PRODUCT(), and how do we loop over it? And add to it? Basic question, I know. Probably got too comfortable with generics and now xsd has thrown something at me which isn't List(of T) I'm running scared.
View 2 Replies
Mar 8, 2011
I have just run into an issue of screen flicker that I haven't been able to solve. I have a panel with dozens of controls on it. Painted onto the panel, behind the controls, are a few colored rectangles.
Those rectangles flicker whenever the mouse is moved over any control, or off the panel. Basically, a paint event for the panel is raised whenever the mouse leaves the panel.
Therefore, I thought that if I only painted the rectangles when they needed to be painted, not every time the Paint event was raised, that I would be able to avoid the flicker. After all, there is no obvious reason why they would need to be re-painted just because the mouse moved over a control on the panel.
the paint event was still being raised, and the panel just wasn't painting the rectangles, so they weren't being drawn at all (but they sure didn't flicker). So, the flicker is being caused by the fact that the paint event clears the panel, which gets displayed in a cleared state for a fraction of a second, then the rectangles are drawn in.
Doublebuffering the form has no discernible impact, which may well be because the screen draws the absence of the rectangles on one frame, then draws the presence of the rectangles on the next frame. They both get shown in sequence, so the rectangles appear to flicker badly.
One obvious alternative is to not even draw the rectangles, which works great, and they are only useful visual guides, not essential components. Still, that doesn't seem like a good solution.
So what I am looking for is a way to supress the display of the undrawn image before showing the finished image.
View 6 Replies
Mar 29, 2012
i want to design a billing software using vb.net.i am planning to use microsoft sql server.how can i save different invoices in a database? i mean,i need to save the whole invoice( invoice no, date, products, rate quantity etc, ie the whole invoice so that it can be accessed again and editted as well ).
can i do it in sql server itself or should i save it in microsoft excel? or is there any better method which i can adopt?
View 6 Replies
Dec 13, 2011
I havnt found any info on this, probably because I expect there is no real way to do it... but does anyone know if there is a way to run an ActiveX control in 'copatibility mode' or some sort ov virtualization WITHIN a .net app?
We have a legacy control that does not work in Vista (and up) If we set the whole app to WinXP SP2 compatibility mode, the control seems to work well enough.
I would like to be able to rig it so we don't need to manually set that on every system.
My next step is to start looking if we can just set the compatibility through install, or the app itself.
View 1 Replies
Nov 4, 2009
Am I still able to develop programs in Visual Basic 6 that will run easily under Windows 7? If no then must I convert to VB.NET? Are there other strategies?
View 2 Replies
Apr 7, 2010
Imports System.Data.OleDb
Public Class Form2
Dim Conn As OleDbConnection
[code]...
this is my codes in vb?I am thinking what is the error in this code?because everytime I execute this There is an error appearing in this part OleA.Fill (DSSearch, 0) it says that "No value given for one or more required parameters." so, what should i need to do?
View 5 Replies
May 17, 2010
I have a small application I wrote in VB with visual studio express. This app uses a timer tick to wait for a certin time, the opens several comm ports, reads data, creates an output string, an sends the string via email. I tested this app for several days
on a windows 7 32 bit machine, with no problems. I compiled (published) the program, and am attempting to run it on a windows 7 64 bit machine. However, on the 64 bit machine, it freezes up and can only be stopped with Task Manager.
at the time the app hangs the only things going on are 1. a timer checking to see if it's time to read the comm ports. and 2. a background thread checkig to see if the internet is available to email the string.
I tried ;loading visual studio on the 64 bit machine, and compiling the app there, with the same result. However it seems to run (tested for 1 hour) in debug on the 64 bit machine.
Has anyone noticed anything like this? any ideas?
View 4 Replies