腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
C#
8
不可
空
引用
和
隐
式
用法
c#
、
c#-8.0
、
nullable-reference-types
在Resharper
和
Rider中,有Jetbrains.Annotations属性可以应用于
隐
式
使用的类型
和
字段。但是,在
C#
8
中,如果你使用可以为
空
的
引用
类型功能。如果没有显
式
地将这些字段设置为非
空
值,那么这种类型的任何
不可
为
空
的字段都将被标记为“从未初始化”。有没有什么方法可以告诉C#
8
编译器“嘿,忽略这个,在这个问题上相信我”? 例如,假设我们有这样的请
浏览 8
提问于2020-01-28
得票数 1
回答已采纳
2
回答
默认情况下禁用.NET 6功能
c#
、
.net
、
visual-studio
、
.net-6.0
、
visual-studio-2022
在VS 2022中使用.NET 6创建新项目时,将自动添加以下新功能: 禁用
隐
式
usings &可
空
引用
(项目创建后每次不编辑项目文件)
浏览 2
提问于2022-03-20
得票数 8
回答已采纳
1
回答
C#
-通过客户/服务接口传递Null对象设计模式的正确方法?
c#
、
design-patterns
、
interfaces
我刚刚了解了Null对象设计模式,它建议服务要么返回一个默认的
空
对象,要么抛出一个与
空
相关的异常本身,这样客户端就不必担心检查null或抛出
空
异常。 问题是,据我所知,客户/服务关系应该通过接口进行。如何通过接口传递“服务处理
空
检查从而客户端不需要”的信息?在
C#
中,接口提供了一个可以预期的方法签名,但是服务进行
空
检查这一事实似乎是一个额外的无法通过接口传递的任意信息。我担心的是,如果客户端假设服务进行
空
检查,即使接口无法指定,这可能导致“泄漏抽象”,而客户机
浏览 0
提问于2020-01-20
得票数 2
1
回答
使值类型变量为
空
:这是否意味着装箱?
c#
、
nullable
、
value-type
、
boxing
、
nullable-reference-types
考虑到
C#
中的下列假设: 我的问题是:对于只有
引用
类型变量是可
空
的,我可以说在第二个例子中我正在进行
隐
式
装箱吗?换句话说,当我使
浏览 2
提问于2020-06-24
得票数 0
回答已采纳
4
回答
Null-Coalescing运算符结果的
隐
式
转换
c#
、
nullable
、
null-coalescing-operator
、
implicit-conversion
的理解在
C#
中。int result = input ??input : 10; // Case - II令人惊讶的是,在Case-I编译器中能够
隐
式
转换int?转换为int,而在Case-II中则显示错误:“错误1无法
隐
式
转换类型'int?‘”到'int'“感谢您
浏览 2
提问于2012-01-18
得票数 6
回答已采纳
1
回答
同时接受
引用
和
值类型的
c#
、
.net
、
generics
、
nullable
、
c#-7.3
T : struct return (T)Convert.ChangeType(value, typeof(T));但这不管用: 错误CS8370特性‘可
空
引用
类型’在
C#
7.3中
不可
用。
浏览 0
提问于2019-11-14
得票数 0
回答已采纳
8
回答
为什么F#、Rust
和
其他人使用选项类型而不是
C#
8
或TypeScript这样的可
空
类型?
language-design
、
null
AFAIK,Option类型将具有运行时开销,而可
空
类型则不会,因为Option时间是一个枚举(消耗内存)。为什么不将可选
引用
标记为可选
引用
,那么编译器就可以跟踪代码执行,并在不能更多的时候找到null? 编辑:我看我被误解了。我理解并同意避免
空
指针的优点。我说的不是接受null的任意指针。我只是问为什么不使用编译时元数据,比如
C#
8
's可
空
引用
类型
和
具有严格
空
检查的TypeScript,其中默认指针不能
浏览 0
提问于2020-05-27
得票数 91
回答已采纳
1
回答
Swift 3及以后的“任何”声明/实现在哪里?
swift
在SWIFT3.0之前,Any被描述为“所有类型都
隐
式
遵守的协议”,并在标准库中实现为。 所有类型
隐
式
遵守的协议。从斯威夫特3.0开始,它的
用法
和
意义似乎没有变化,但在Swift不断变化的语言
引用
中,我再也找不到对它的任何明确的
引用
。 在SWIFT3.0中声明/实现的Any在哪里?
浏览 1
提问于2017-07-26
得票数 1
回答已采纳
7
回答
当给定null时,为什么is运算符返回false?
c#
return null is string;人们期望null值属于任何
引用
(或可为null )类型。事实上,
C#
语言规范中提到了一些支持这一假设的内容,例如(6.1.6
隐
式
引用
转换):..。 ·从
空
字面值到任何
引用
类型。is运算符的描述(7.10.10 is运算符)首先指出,当存在从E到T的
引用
转换时,表达式(E is T)将导致true,但作者接着明确排除了E为null文
浏览 40
提问于2011-10-04
得票数 141
回答已采纳
1
回答
为什么在访问结构时需要默认设置?
c#
、
vb.net
、
winforms
我有一个VB方法,我把它转换成了
C#
End If使用远程在线转换器将其转换为
C#
浏览 3
提问于2016-07-13
得票数 2
回答已采纳
1
回答
为什么
c#
null可以
隐
式
转换为System.Nullable<T>,但不能自定义Nullable<T>
c#
、
.net
为什么null可以像这样
隐
式
转换为System.Nullable<T>:但是自定义的Nullable<T> (从.net
引用
源修改)不能分配null,有编译器的魔力吗?有人能告诉我更多的内在暗示吗?
浏览 4
提问于2015-04-11
得票数 7
回答已采纳
3
回答
在F#中
不可
能存在无限类型(也称为递归类型)吗?
f#
、
types
、
type-inference
当我在推特上
和
聊天时,我发现F#似乎不支持无限类型。事实证明,在
C#
中,您可以按照以下思路做一些事情:然而,在对我们的两个部分进行了一些实验之后,我们确定在F#中相同的内容似乎是
不可
能的,无论是
隐
式
的还是显
式
的。显
式
: error FS
浏览 2
提问于2009-08-04
得票数 12
回答已采纳
1
回答
在F#中使用可
空
引用
类型
c#
、
f#
、
nullable-reference-types
在F#中,如果要与另一种.NET语言进行互操作,或者使用AllowNullLiteral属性,则
引用
类型可以是null。立即想到的例子是字符串:但是使用
C#
8
和
dotnet核心3,我们可以选择加入。我必须用
C#
编写上述代码,如下所示:是否有一种方法也可以选择F#中的可
空
引用
类型,以便其他语言中定义的类型不能是null,如果可以的话,将它们写成一个可
空
引用<
浏览 5
提问于2020-08-26
得票数 6
回答已采纳
2
回答
在
C#
中,对
引用
类型成功的强制转换操作最终会在堆上创建一个新的存储位置。
c#
、
casting
我正在查看从MSDN文档中获取的关于强制转换的
C#
代码。问题:对
引用
类型的
隐
式
和
显
式
转换是否会创建新的堆存储位置?例如,变量a是否指向变量g指向的相同的堆位置,或者a将指向由于
隐
式
转换而创建的堆上的新位置,答案背后的推理是什么? 我猜不是,因为
C#
代码占用了太多的堆内存,这些代码经常进行
隐
式
转换。此外,对于相同代码中的显
式<
浏览 2
提问于2017-11-18
得票数 1
回答已采纳
1
回答
QSharedPointer
和
QSharedDataPointer的区别是什么?
c++
、
qt
、
pointers
、
qsharedpointer
这两种类型的指针有什么不同?据我所知,QSharedPointer可以很好地处理这种情况,那么QSharedDataPointer有什么必要呢?
浏览 2
提问于2010-10-07
得票数 14
回答已采纳
12
回答
C++中的混淆
c++
、
pass-by-reference
、
parameter-passing
void DoSomething(const & foo )
和
void DoSomething(Foo Foo )之间有什么区别?,如果我们不指定&那么Foo的实例将通过值(而不是
引用
)传递。那么,为什么让const +&成为在没有&
和
const的情况下进行争论的最佳实践呢?有人能给我
隐
式<
浏览 24
提问于2010-06-26
得票数 5
回答已采纳
2
回答
C#
中值类型的
隐
式
转换运算符
c#
、
operators
我看到了一篇博客文章:
隐
式
转换算子是不好的。本文不鼓励对
引用
类型使用
隐
式
转换。本文描述了
引用
类型的
隐
式
转换所引起的问题,这些问题归结为以下几点然而,我的问题是关于
浏览 0
提问于2014-10-15
得票数 4
1
回答
如何将F#
和
C#
程序集与ILMerge合并,以便在
引用
时所有类型都可用?
c#
、
f#
、
ilmerge
我有一个包含许多F#
和
C#
项目的解决方案。我的目标是使用ILMerge将它们合并到一个库中。合并后的dll将放入NuGet包中,并在其他项目中
引用
。然而,当在F#项目中
引用
合并的dll时,我遇到了一些问题。 我遇到的问题是,如果给ILMerge的主程序集是F#,那么在F#项目中
引用
结果dll只允许访问F#类型。如果选择
C#
dll作为合并的主程序集,则在F#项目中
引用
时,合并的F#程序集的扩展方法
不可
用。此外,在打开封闭命名空间时,不再
隐</e
浏览 1
提问于2012-12-17
得票数 5
1
回答
隐
式
枚举转换会转换什么?
c#
来自
C#
5.0规范
隐
式
枚举转换允许将十进制整数-文字0转换为任何枚举类型
和
基础类型为枚举类型的任何可
空
类型。如果是,为什么
隐
式
枚举转换不允许其他整数值,如1,2,3,…被转换成任何枚举类型? 谢谢。
浏览 2
提问于2017-06-08
得票数 1
10
回答
C#
数值常数
c#
、
casting
我有以下
C#
代码:...它会产生错误: as运算符必须与
引用
类型或可
空
类型一起使用(“字节”是
不可
空
值类型)。
浏览 15
提问于2008-09-04
得票数 19
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
在.NET框架中使用C# 8和可空引用类型
C# 9 Lambda小幅升级
C#的未来:简化参数空值验证
C#12 都有哪些新特性?
C#8.0 新特性
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券