看了Tinyxml的代码
发现有下面两句代码
const TiXmlNode* FirstChild() const { return firstChild; }
TiXmlNode* FirstChild() { return firstChild; }我想问下 这个两句代码有啥区别,如果调用FirstChild方法,调用的是哪一个呢?
发现有下面两句代码
const TiXmlNode* FirstChild() const { return firstChild; }
TiXmlNode* FirstChild() { return firstChild; }我想问下 这个两句代码有啥区别,如果调用FirstChild方法,调用的是哪一个呢?
TiXmlNode * ptr;
const TiXmlNode* ptr_const;ptr = pXml->FirstChild();//调用TiXmlNode* FirstChild()
ptr_const = FirstChild() ;//调用const TiXmlNode* FirstChild() const
void play(Child& cd);//调用第二个版本
void play(const Child& cd);//调用第一个版本
非const类型对象调用第二个
// const Tinyxml* p1;
// Tinyxml* p2;
p1->FirstChild()调用的是前一个函数
p2->FirstChild()调用的是后一个函数