Skip to content

OWCSTL string missing C++98 features #892

Open
@adamyg

Description

@adamyg

Hi, the following C++98 elements are missing from the current <string> / <_strdef.h> implementation:

Iterator interfaces:

template <class InputIterator>
string  (InputIterator first, InputIterator last);
template <class InputIterator>
string& assign (InputIterator first, InputIterator last);

Compare Methods:

int compare (const string& str) const;
int compare (size_t pos, size_t len, const string& str) const; 
int compare (size_t pos, size_t len, const string& str, size_t subpos, size_t sublen) const;
int compare (const char* s) const;
int compare (size_t pos, size_t len, const char* s) const;
int compare (size_t pos, size_t len, const char* s, size_t n) const;

For greater portability the following C++11 features could also be added:

const_iterator cbegin() const /*noexcept*/;
const_iterator cend() const /*noexcept*/ ;
const_reverse_iterator crbegin() const /*noexcept*/ ;
const_reverse_iterator crend() const /*noexcept*/;
char& front();
const char& front() const;
void pop_back();
void shrink_to_fit()

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions