Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/147.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++;类名函数() 我最近在网上进行了一个关于C++的问答,一个与语法类似的问题。 class className { public: constructor() { print("ABC"); } } int main() { className ABC(); return 0; }_C++_Class_Oop_Constructor - Fatal编程技术网

C++;类名函数() 我最近在网上进行了一个关于C++的问答,一个与语法类似的问题。 class className { public: constructor() { print("ABC"); } } int main() { className ABC(); return 0; }

C++;类名函数() 我最近在网上进行了一个关于C++的问答,一个与语法类似的问题。 class className { public: constructor() { print("ABC"); } } int main() { className ABC(); return 0; },c++,class,oop,constructor,C++,Class,Oop,Constructor,我认为它不会编译,但它编译并运行时没有任何效果,我对这是什么功能以及在什么情况下我们使用它感兴趣?您发布的代码不会编译。忽略它不做任何事情有两个原因 className ABC()声明一个函数。要调用类的默认构造函数,只需省略括号:className ABC className有一个名为constructor的方法,但没有constructor,因此在构造时不会打印任何内容 className ABC()声明函数指针。使用类名ABC以创建本地对象。名为constructor的方法不是构造函数。而

我认为它不会编译,但它编译并运行时没有任何效果,我对这是什么功能以及在什么情况下我们使用它感兴趣?

您发布的代码不会编译。忽略它不做任何事情有两个原因

  • className ABC()声明一个函数。要调用类的默认构造函数,只需省略括号:
    className ABC
  • className
    有一个名为
    constructor
    的方法,但没有constructor,因此在构造时不会打印任何内容

  • className ABC()声明函数指针。使用
    类名ABC以创建本地对象。名为
    constructor
    的方法不是构造函数。而且构造函数是一个与类同名的函数,比如
    className(){…
    不是名为constructor的方法。@AlexShesterov它没有声明函数指针。比如我。@Swardfish