单选题

以下C++代码段中存在语法错误或逻辑错误,(    )是正确的。

#include <iostream>

using namespace std;

class MyClass {

public:

      MyClass() {

            cout << "Constructor called!" << endl;

      }

      void display() {

            cout << "Display function called!" << endl;

      }

};

int main() {

      MyClass* obj = NULL;

      obj->display();

      return 0;

}

A

NULL 在C++中无法用于指针初始化,应使用 nullptr 。

B

obj 的定义应该是 MyClass obj; 而不是指针类型。

C

obj->display() 语句存在空指针访问错误,obj 应该初始化为一个有效的对象。

D

obj->display() 语句会调用 display() 函数,但它没有输出任何内容。

赣ICP备20007335号-2