c# - Generic Type contraints with Or -



c# - Generic Type contraints with Or -

public t createform<t>() t: baseform, basemainform

i know above means t baseform and basemainform. possible create constraint t has either baseform or basemainform?

no, not allowed in c#. compiler uses generic constraint determine operations available on t within generic method - allowing or look not type safe.

if need this, consider adding interface covering mutual parts of baseform , basemainform, , apply generic constraint. way, interface defines contract of method createform<t> needs - , must create sure form's pass in implement interface.

something like:

public interface ibaseform { foo(); } class baseform : ibaseform {} class basemainform : ibaseform {} public t createform<t>() t : ibaseform

c# constraints generics

Comments

Popular posts from this blog

iphone - Dismissing a UIAlertView -

c# - Can ProtoBuf-Net deserialize to a flat class? -

javascript - Change element in each JQuery tab to dynamically generated colors -