Convenience char*
constructible from std::string
and char*
, it maps
(char*)0 to an empty string.
bool hasPrefix(
const std::string &
str_r,
const std::string &
prefix_r )
Reference counted access to a Tp object calling a custom Dispose function when the last AutoDispose h...
Called with a plain char*
as argument, the std::string
is created form for nothing. The implementation actually does not use the std::string
.
Best would be to implement hasPrefix
for each combination of char*
and std::string
arguments:
bool hasPrefix(
const std::string &
str_r,
const std::string &
prefix_r )
bool hasPrefix(
const std::string &
str_r,
const char *
prefix_r )
bool hasPrefix( const char * str_r, const std::string & prefix_r )
{
return( str_r ? ::strncmp( str_r, prefix_r.c_str(), prefix_r.size() ) == 0 : prefix_r.
empty() ); }
bool hasPrefix(
const char * str_r,
const char * prefix_r )
{
return(
str && prefix_r ? ::strncmp( str_r, prefix_r, ::strlen(prefix_r) ) == 0
: !((str_r && *str_r) || (prefix_r && *prefix_r)); }
String related utilities and Regular expression matching.
bool hasPrefix(const C_Str &str_r, const C_Str &prefix_r)
Return whether str_r has prefix prefix_r.
This is where C_Str can help. Constructible from std::string
and char*
, it reduces the std::string
to its char*
. At the same, time it converts
(char*)0 into an ""
string.
Convenience char* constructible from std::string and char*, it maps (char*)0 to an empty string.
- Todo
- Check whether to replace by boost::string_ref
Definition at line 90 of file String.h.