Visual c++ 如何正确传递对常量指针的引用?
我只是想知道如何有效地将对const指针的引用传递给类的对象。 比如说,Visual c++ 如何正确传递对常量指针的引用?,visual-c++,Visual C++,我只是想知道如何有效地将对const指针的引用传递给类的对象。 比如说, class BigData { public: int m[1000]; }; void Func(const BigData* const& bigData) { // just read bigData; No modification on bigData. } int main() { BigData* bigData = new BigData(); Func(bigData); }
class BigData
{
public:
int m[1000];
};
void Func(const BigData* const& bigData)
{
// just read bigData; No modification on bigData.
}
int main()
{
BigData* bigData = new BigData();
Func(bigData);
}
在上面的例子中,我不太明白为什么我必须把const放在reference(&)之前。
如果我试图在没有引用的情况下构建它,编译器会抱怨
无法将参数1从“BigData*”转换为“const BigData*&”
似乎它和R值规则有关,但我不知道到底是什么规则控制了这个案例
短暂性脑缺血发作
}不要。只需按值传递指针。从语法上讲,被调用函数更容易使用,开销也更小
void Func(const BigData *bigData)