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?
c++
add a comment |
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?
c++
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
add a comment |
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?
c++
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++
c++
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
add a comment |
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
add a comment |
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();
}
add a comment |
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();
}
add a comment |
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();
}
add a comment |
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();
}
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();
}
answered Nov 22 at 7:09
Raja Muthyala
365
365
add a comment |
add a comment |
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
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