How to create an object in a form like this: ifstream in();

90 views Asked by At

Im beginner in c++. I have seen several times when object created like:

class_name object_name();

and after that you can refer to object_name as an object of the class. How can i do this in my class? Should I override the constructor? And how to do that?

1

There are 1 answers

1
einpoklum On BEST ANSWER

This line of code can probably trigger a vexing (but not "the most vexing") parse behavior: instead of being interpreted as a variable declaration, it will be interpreted as the declaration of a function named object_name, taking no parameters and returning a value of type class_name.

See it happen on GodBolt: The compiler tells you:

<source>: In function 'void foo()':
<source>:4:27: warning: empty parentheses were disambiguated as a function declaration [-Wvexing-parse]
    4 |     class_name object_name();
      |