问题标签 [null-pointer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 我可以举一个现实生活中的例子,其中非静态成员函数不访问通过空指针调用的对象会导致可观察到的问题吗?
可能重复:
何时在空实例上调用成员函数会导致未定义的行为?
像这样的任何东西:
在 C++ 中是未定义的行为,因为通过空指针调用非静态成员函数在形式上是非法的。有关C++ 标准引用的详细解释,请参阅此答案。我很清楚理论部分,这个问题不是关于理论的,所以它不是那个问题的重复。
在所有实现中,我都知道上面的代码或其等效代码不会导致任何可观察到的问题 - 因为成员函数不访问对象,所以该方法将被很好地调用。
我可以有任何真实的例子,其中相同的设置会导致实际的可观察到的问题吗?
c - C中与NULL的两个相等比较
这是关于在将 C++ 中的指针与 NULL 进行比较时的一个小混淆。这是代码:
输出:
而对于以下代码:
这是输出:
谁能解释一下发生这种情况的原因?
visual-studio - Silverlight 业务应用程序中的空指针异常
我是银光新手。我刚刚在 Visual Studio 中创建了一个新的 Silverlight 业务应用程序。但是,我看不到设计器模式下的页面。当我选择设计器模式时,它会抛出空指针异常,而不是设计器。但是,我可以手动编写代码,当我运行时,页面会显示在浏览器中。
我清楚地理解,这可能是 vs/silverlight 插件的问题。我该如何解决这个问题。?任何帮助都深表感谢。
设置 Windows 7 Visual Studio 2010 Ultimate Silverlight 4 开发人员运行时 Silverlight 工具 April10
c - 调试时指针分配不起作用
我有一个包含两个指针的结构, <head, iterator> 两个指针都指向另一个结构 - Node.js。
我想让迭代器指针指向与head相同的位置。继承人在运行该行之前和之后的调试:
行前
线后
如您所见,运行该行之后,map->iterator 仍然指向 0x0.. 这是为什么呢?
spring - 无法获取 sessionFactory
我的带有spring和hibernate的java项目,无法获取sessionFactory。当我使用它时,它一直为空。配置:
Test.java 的主要代码是
c++ - 无效的空指针 - C++
我从这部分代码中得到一个无效的空指针错误。我猜这与字符串有关,但由于我最近才了解它们,所以我找不到问题所在。
这是来自 xstring 的调试行:
提前感谢您的帮助。
编辑:错误发生在 Return 语句中,在 xstring 的提取中,黄色箭头指向“::_CrtDbgBreak();”
编辑2:
希望这是正确的东西。
c++ - 使用引用比使用指针的优势是否证明偶尔的“空引用”是合理的?
我目前正在设计一个大致如下所示的类层次结构:
*nullptr
只要从不访问引用,IIRC 绑定引用是安全的。所以现在我有责任设计我的 Layer1Protocol 类以防止这种情况发生。
我喜欢这种方法,因为我确保所有用户协议实例都会引用它们各自的低层协议(Layer1Protocol 是例外,但它是核心库的一部分)。我认为这比使用指针更可取,因为一旦引入指针,就可以传递空指针,然后可能需要在运行时检查,结果是大量的指针检查代码和偶尔的错误。
你认为我的基于参考的方法是可以辩护的吗?还是使用空引用总是不好的做法?
ruby - (!obj.nil?) 链的 Ruby 语法糖
可能重复:
是否有一种干净的方法可以避免在嵌套的参数哈希中调用 nil 上的方法?
ruby 中 groovy 的链式属性是否有等效的 null 预防措施?
在 Ruby 中是否有任何语法糖可以帮助避免“nil:NilClass 的未定义方法‘xx’”而不写这个?
在 Groovy 中我会这样做
Ruby 是否有等效的语法?
c - 指针定义的行为是按位算术吗?
我正在学习指针。鉴于此代码:
是否将if
条件更改为此有效(已定义)行为?
c++ - 在 C++ 中取消引用 NULL 指针
可能重复:
在 NULL 指针上访问类成员
我知道取消引用 NULL 指针会使程序崩溃或给出未定义的行为。但是以下程序始终打印This is a car
出我运行了多少次。在 Linux (g++) 和 AIX (xlc++) 中检查。
当我为类添加一个数据成员并尝试打印它的值时,程序就会崩溃。
因此,取消引用 NULL 指针并调用不访问类的数据成员的成员函数似乎很好。这真的是一种未定义的行为吗?