绍兴做网站公司哪家好,云南人才网招聘网官网,wordpress默认登录地址修改,网站建设企业文化1、静态成员变量的初始化
静态成员变量声明在 .h 头文件文件中#xff0c;初始化应该在 .cpp 源文件中
就会出现找到一个或多个多重定义的符号,下面的错误 class MyString{public:typedef char* iterator;typedef const char* const_iterator;iterator begin();… 1、静态成员变量的初始化
静态成员变量声明在 .h 头文件文件中初始化应该在 .cpp 源文件中
就会出现找到一个或多个多重定义的符号,下面的错误 class MyString{public:typedef char* iterator;typedef const char* const_iterator;iterator begin();iterator end();const_iterator begin() const;const_iterator end() const;//MyString();MyString(const char* str );MyString(const MyString s);~MyString();void swap(MyString s);MyString operator(MyString tmp);char operator[](size_t pos);const char operator[](size_t pos) const;size_t capacity() const;size_t size() const;void reserve(size_t n);void resize(size_t n, char ch \0);void clear();size_t find(char ch, size_t pos 0);size_t find(const char* sub, size_t pos 0);void push_back(char ch);void append(const char* str);void insert(size_t pos, char ch);void insert(size_t pos, const char* str);void erase(size_t pos, size_t len npos);MyString operator(char ch);MyString operator(const char* str);bool operator(const MyString s) const;bool operator(const MyString s) const;bool operator(const MyString s) const;bool operator(const MyString s) const;bool operator(const MyString s) const;bool operator!(const MyString s) const;MyString substr(size_t pos, size_t len npos);const char* c_str() const;private:char* _str;size_t _size;size_t _capacity;public:const static size_t npos; //初始化必须在源文件内};std::ostream operator(std::ostream out, const MyString s);std::istream operator(std::istream in, MyString s); 2、缺省值
缺省值应该在 .h 头文件中不应该在 .cpp 源文件中
如果出现就会出现如下错误“MyString::resize”: 重定义默认参数 : 参数 1 void MyString::resize(size_t n, char ch \0) //缺省值在头文件的声明中
{if (n _size){_str[n] \0;_size n;}else{reserve(n);while (_size n){_str[_size] ch;_size;}_str[_size] \0;}
}