首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >带有参数问题的泛型函数

带有参数问题的泛型函数
EN

Stack Overflow用户
提问于 2010-07-29 04:26:37
回答 2查看 1.4K关注 0票数 0

嗨,我有一个泛型函数,如下所示。它可用于通过调用

showForm(ch);

它适用于第二个函数(没有参数的新函数),但是如果我想要像第三个函数(带参数的新函数)那样在构造函数中使用参数来显示表单,那么我就不能这样做了。你知道该怎么做吗?.Any?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
       void showForm<T>(T frm)  where T :Form, new()
        {
            if (frm == null)
            {
                frm = new T();
            }
            frm.MdiParent = this;
            frm.Show();
        }


        //Works for this
        public frmChild2()
        {
            InitializeComponent();
            ChildToolStrip = toolStrip1;
           // toolStrip1.Visible = false;
        }

        //Does not Work for this
        public frmChild2(string title)
        {
            InitializeComponent();
            ChildToolStrip = toolStrip1;
            Text = title;
            // toolStrip1.Visible = false;
        }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-29 04:45:01

使用Where T : new()告诉编译器T有一个public no-arg构造函数。

第二种形式没有这样的构造函数。

从您所显示的内容来看,实际上并不需要在构造函数中设置标题( showForm方法如何知道要设置什么?)。

因为T也被约束为Form,所以您可以在实例化frm.Text =之后设置Form

票数 5
EN

Stack Overflow用户

发布于 2010-07-29 04:47:49

new()保证T将有一个不带参数的公共构造函数-通常,如果您需要创建该类型的新实例,则可以使用此约束。您不能直接将任何内容传递给它。

看看这个

Passing arguments to C# generic new() of templated type

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3359476

复制
相关文章
eval解析json字符串
场景:在springMVC,手动拼接的list,转成本json字符串后,传到前台,
河岸飞流
2019/09/11
1.1K0
JSON.parse()与eval()的区别
JSON.parse与eval和能将一个字符串解析成一个JSON对象,但还是有挺大区别。
JaneYork
2023/10/11
2700
CompletableFuture真香,可以替代CountDownLatch!
Future相当于一个占位符,代表一个操作将来的结果。一般通过get可以直接阻塞得到结果,或者让它异步执行然后通过callback回调结果。
xjjdog
2021/09/17
1.5K0
fencedframe 可以替代 iframe 吗?
今天继续聊 浏览器策略 ,这是我 「浏览器策略解读」 专栏的第 35 篇文章了,感谢读者们一如既往的支持!
ConardLi
2022/05/23
2.3K0
fencedframe 可以替代 iframe 吗?
Linux Lite 5.4 可以在您的 PC 上替代 Windows 10
原文:https://www.linuxmi.com/linux-lite-5-4.html
逆锋起笔
2021/04/26
3K0
Linux Lite 5.4 可以在您的 PC 上替代 Windows 10
JSON必知必会阅读
阅读了一下JSON必知必会,由于日常使用JSON比较多,所以文中内容大部分都已经接触过了,大概通读全书耗时1h左右 PDF地址:链接:https://pan.baidu.com/s/1iZQLR1zGJbH9Eoq3t_GYFQ 密码:x4lv
zx钟
2020/02/25
8020
eval在python中是什么意思_如何在Python中使用eval ?
在Python中,我们有许多内置方法,这些方法对于使Python成为所有人的便捷语言至关重要,而eval是其中一种。eval函数的语法如下:
全栈程序员站长
2022/11/17
3.4K0
使用httpstat替代curl,结果更易于阅读
可以看到httpstat 自动把访问的结果存到/tmp/下的临时文件了,并且给出了每个阶段的耗时情况。
保持热爱奔赴山海
2023/09/23
2950
ArrayList 可以完全替代数组吗?
在前面的文章里,我们学习了很多数据结构与算法思想。在实际的业务开发中,往往不需要我们手写数据结构,而是直接使用标准库的数据结构 / 容器类。
用户9995743
2022/12/22
7520
ArrayList 可以完全替代数组吗?
在模版类里使用自己时可以省略模版参数
用户10551528
2023/10/18
1200
在模版类里使用自己时可以省略模版参数
javascript:巧用eval函数组装表单输入项为json对象
在ajax方式做web开发时,经常会遇到会保存前,收集表单输入项,组成json对象,然后把对象直接post到服务端的场景 常规做法是在js里写类似如下的代码: var myObj = {}; myObj.x = document.getElementById("x").value; myObj.y = document.getElementById("y").value; //... //然后ajax post或get提交 表单元素不多的时候,这样还好,但是如果一个表单有好几十项甚至
菩提树下的杨过
2018/01/24
1.5K0
程序员在大数据面试时的争议:Spark能替代Hive?
本文作者:曾就职传统通讯运营商,负责BI项目的开发;目前转型互联网公司,就职于某厂负责相关的大数据仓库建设工作。
养码场
2018/10/18
1K0
程序员在大数据面试时的争议:Spark能替代Hive?
nodejs写入json文件_json文件可以删除吗
哈喽!nodejs的文件系统,接触过node的对node的文件系统肯定不会陌生,这两天我就在思考一个问题,我是否可以在本地操作我的本地json文件,这样一个本地的文本数据库就有了,如果是便签之类,记录的软件,我完全可以不用连后台的数据库,我可以自己操作本地的json文件,自己用node写后台,答案是肯定的,下面我们就一起来实现一下吧,对本地json文件的增、删、改、查
全栈程序员站长
2022/11/04
2.9K0
nodejs写入json文件_json文件可以删除吗
golang源码阅读:test2json
go test加参数-json就能输出 json格式,下面我们用一个简单的例子看下对他进行分析,然后分析下相关源码。对于单测
golangLeetcode
2023/09/06
1780
golang源码阅读:test2json
12个可以替代jenkins的CI/CD工具
Jenkins是一个开源的持续集成平台,是DevOps生命周期中的一个重要工具。但是,与当前的用户界面趋势相比,它的界面已经过时,用户界面也不够友好(苦叶子推荐你用script pipeline: Jenkins之jenkinsfile基础)。此外,Jenkin配置可能比较复杂,而且它还有许多其他缺点。
苦叶子
2020/02/25
12.1K0
12个可以替代jenkins的CI/CD工具
linux eval
eval 就是执行以下两个步骤 1.第一次,执行变量替换,类似与C语言的宏替代
雪影
2018/08/02
9090
电子阅读out,VR/AR带你走进阅读3.0时代
近日,南非一家公司启动了一项名为Kickstarer的计划,其目标是在AR技术的支持下生产一系列儿童书籍。该系列的第一本书已经开始制作,内容灵感则源自经典读物《格林童话》。该书讲述了Hansel和Gr
VRPinea
2018/05/16
7810
Python - eval()
eval 的作用域就是 g 指定的这个字典,外面的 x = 10 被屏蔽掉了,eval 是看不见的,所以使用了 x 为 5 的值
小菠萝测试笔记
2021/09/14
9030
一些原生写法可以替代Jquery方法
jQuery的核心是通过各种选择器,选中DOM元素,可以用querySelectorAll方法模拟这个功能。
javascript.shop
2019/09/04
2.1K0
Fastjson解析JSON时乱序解决
默认解析json字符串时序列化是无序的,而有些场景下需要按前台传过来的顺序 解析时传入参数Feature.OrderedField可保持有序 JSONObject jsonObject = JSONObject.parseObject(jsonData, Feature.OrderedField); List<LinkedHashMap> templateMap = JSON.parseArray(jsonObject.getString("jsonValue"), LinkedHashMap.class
4xx.me
2022/06/09
1.4K0

相似问题

无法获取Swift存储桶中的文件/对象列表;iOS - S3

164

iOS: UITableViewCell在Swift中的垃圾桶删除按钮

17

从s3桶中删除文件

64

从S3桶中删除空文件

22

删除S3中的桶

32
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文