What is the meaning of & in c++?

前端 未结 6 811
走了就别回头了
走了就别回头了 2020-12-03 16:50

I want to know the meaning of & in the example below:

class1 &class1::instance(){

///something to do

}
6条回答
  •  囚心锁ツ
    2020-12-03 17:12

    The & operator has three meanings in C++.

    • "Bitwise AND", e.g. 2 & 1 == 3
    • "Address-of", e.g.: int x = 3; int* ptr = &x;
    • Reference type modifier, e.g. int x = 3; int& ref = x;

    Here you have a reference type modifier. Your function class1 &class1::instance() is a member function of type class1 called instance, that returns a reference-to-class1. You can see this more clearly if you write class1& class1::instance() (which is equivalent to your compiler).

提交回复
热议问题