Return type of a class of a function inside same class











up vote
0
down vote

favorite












Just started learning, please be gentle!
I'm working on an assignment and we were provided a .h file with all the member functions we have to complete. One of said functions has a return type of the class it's located in.



class A
{
public:
A();
...
A a();
private:
...
}


I'm implementing A a(); with:



A A::a()
{
...
}


Is this the correct way of implementing this type of function? Or am I doing something completely wrong? What is the proper terminology for this type of function? And finally, how do I call it in main?










share|improve this question




















  • 1




    No. it should be A A::a(). because you do not need to specify where the A class is, but you do need to specify that the a() function you are defining is the A class a() function.
    – Rob
    Nov 22 at 3:56






  • 1




    Sorry, typo! It's already A A::a(), thank you!
    – Elena K
    Nov 22 at 4:00

















up vote
0
down vote

favorite












Just started learning, please be gentle!
I'm working on an assignment and we were provided a .h file with all the member functions we have to complete. One of said functions has a return type of the class it's located in.



class A
{
public:
A();
...
A a();
private:
...
}


I'm implementing A a(); with:



A A::a()
{
...
}


Is this the correct way of implementing this type of function? Or am I doing something completely wrong? What is the proper terminology for this type of function? And finally, how do I call it in main?










share|improve this question




















  • 1




    No. it should be A A::a(). because you do not need to specify where the A class is, but you do need to specify that the a() function you are defining is the A class a() function.
    – Rob
    Nov 22 at 3:56






  • 1




    Sorry, typo! It's already A A::a(), thank you!
    – Elena K
    Nov 22 at 4:00















up vote
0
down vote

favorite









up vote
0
down vote

favorite











Just started learning, please be gentle!
I'm working on an assignment and we were provided a .h file with all the member functions we have to complete. One of said functions has a return type of the class it's located in.



class A
{
public:
A();
...
A a();
private:
...
}


I'm implementing A a(); with:



A A::a()
{
...
}


Is this the correct way of implementing this type of function? Or am I doing something completely wrong? What is the proper terminology for this type of function? And finally, how do I call it in main?










share|improve this question















Just started learning, please be gentle!
I'm working on an assignment and we were provided a .h file with all the member functions we have to complete. One of said functions has a return type of the class it's located in.



class A
{
public:
A();
...
A a();
private:
...
}


I'm implementing A a(); with:



A A::a()
{
...
}


Is this the correct way of implementing this type of function? Or am I doing something completely wrong? What is the proper terminology for this type of function? And finally, how do I call it in main?







c++






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 22 at 3:58

























asked Nov 22 at 3:51









Elena K

11




11








  • 1




    No. it should be A A::a(). because you do not need to specify where the A class is, but you do need to specify that the a() function you are defining is the A class a() function.
    – Rob
    Nov 22 at 3:56






  • 1




    Sorry, typo! It's already A A::a(), thank you!
    – Elena K
    Nov 22 at 4:00
















  • 1




    No. it should be A A::a(). because you do not need to specify where the A class is, but you do need to specify that the a() function you are defining is the A class a() function.
    – Rob
    Nov 22 at 3:56






  • 1




    Sorry, typo! It's already A A::a(), thank you!
    – Elena K
    Nov 22 at 4:00










1




1




No. it should be A A::a(). because you do not need to specify where the A class is, but you do need to specify that the a() function you are defining is the A class a() function.
– Rob
Nov 22 at 3:56




No. it should be A A::a(). because you do not need to specify where the A class is, but you do need to specify that the a() function you are defining is the A class a() function.
– Rob
Nov 22 at 3:56




1




1




Sorry, typo! It's already A A::a(), thank you!
– Elena K
Nov 22 at 4:00






Sorry, typo! It's already A A::a(), thank you!
– Elena K
Nov 22 at 4:00














1 Answer
1






active

oldest

votes

















up vote
0
down vote













You should probably start to learn defining C++ member functions
https://www.tutorialspoint.com/cplusplus/cpp_class_member_functions.htm



class A
{
public:
A();
A a();
private:
};

A::A()
{
}

A A::a()
{
}
int main()
{
A a1;
A a2 = a1.a();
}





share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53423621%2freturn-type-of-a-class-of-a-function-inside-same-class%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote













    You should probably start to learn defining C++ member functions
    https://www.tutorialspoint.com/cplusplus/cpp_class_member_functions.htm



    class A
    {
    public:
    A();
    A a();
    private:
    };

    A::A()
    {
    }

    A A::a()
    {
    }
    int main()
    {
    A a1;
    A a2 = a1.a();
    }





    share|improve this answer

























      up vote
      0
      down vote













      You should probably start to learn defining C++ member functions
      https://www.tutorialspoint.com/cplusplus/cpp_class_member_functions.htm



      class A
      {
      public:
      A();
      A a();
      private:
      };

      A::A()
      {
      }

      A A::a()
      {
      }
      int main()
      {
      A a1;
      A a2 = a1.a();
      }





      share|improve this answer























        up vote
        0
        down vote










        up vote
        0
        down vote









        You should probably start to learn defining C++ member functions
        https://www.tutorialspoint.com/cplusplus/cpp_class_member_functions.htm



        class A
        {
        public:
        A();
        A a();
        private:
        };

        A::A()
        {
        }

        A A::a()
        {
        }
        int main()
        {
        A a1;
        A a2 = a1.a();
        }





        share|improve this answer












        You should probably start to learn defining C++ member functions
        https://www.tutorialspoint.com/cplusplus/cpp_class_member_functions.htm



        class A
        {
        public:
        A();
        A a();
        private:
        };

        A::A()
        {
        }

        A A::a()
        {
        }
        int main()
        {
        A a1;
        A a2 = a1.a();
        }






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 22 at 7:09









        Raja Muthyala

        365




        365






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53423621%2freturn-type-of-a-class-of-a-function-inside-same-class%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Trompette piccolo

            Slow SSRS Report in dynamic grouping and multiple parameters

            Simon Yates (cyclisme)