对于访问违规异常,我们应该责怪作者吗?
For access violation exceptions, should we blame the author?
我主要使用 C# 编写托管代码。在托管世界中,导致空引用异常是一个很大的禁忌,即使你抓住了它们,除了线程安全滥用之外,这几乎总是作者的错。我们也可以对本机代码得出同样的结论吗?我的意思是,如果一个库导致访问冲突作为第一次机会异常,即使这个异常由库处理,我们可以说它是库中的错误吗?
在本机 C++ 代码中,"access violation errors" 或 "null reference errors" 等根本 不是 异常。他们是未定义的行为。这完全是责任编码员的责任。
这可能是编码员向图书馆传递废话。但这与 C# 没有什么不同 - 口头禅 "garbage in, garbage out" 非常普遍。
我主要使用 C# 编写托管代码。在托管世界中,导致空引用异常是一个很大的禁忌,即使你抓住了它们,除了线程安全滥用之外,这几乎总是作者的错。我们也可以对本机代码得出同样的结论吗?我的意思是,如果一个库导致访问冲突作为第一次机会异常,即使这个异常由库处理,我们可以说它是库中的错误吗?
在本机 C++ 代码中,"access violation errors" 或 "null reference errors" 等根本 不是 异常。他们是未定义的行为。这完全是责任编码员的责任。
这可能是编码员向图书馆传递废话。但这与 C# 没有什么不同 - 口头禅 "garbage in, garbage out" 非常普遍。