Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6707513
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T07:38:55+00:00 2026-05-26T07:38:55+00:00

Ok, I know that operator. is not overloadable but I need something like that.

  • 0

Ok, I know that operator. is not overloadable but I need something like that.

I have a class MyClass that indirectly embeds (has a) a std::string and need to behave exactly like a std::string but unfortunately cannot extend std::string.

Any idea how to achieve that ?

Edit: I want that the lines below to compile fine

MyClass strHello1(“Hello word”);

std::string strValue = strHello1;
const char* charValue = strHello1.c_str();

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-26T07:38:56+00:00Added an answer on May 26, 2026 at 7:38 am

    As per your later edit, that:

    MyClass strHello1("Hello word");
    
    std::string strValue = strHello1;
    const charValue = strHello1.c_str();
    

    should compile fine, the only solution is to write a wrapper over std::string:

    class MyClass
    {
    private:
       std::string _str;
    public:
       MyClass(const char*);
       //... all other constructors of string
    
       operator std::string& ();
       //... all other operators of string
    
       const char* c_str();
       //... all other methods of string
    
       friend std::string& operator + ( std::string str, Foo f);
    };
    
    //+ operator, you can add 2 strings
    std::string& operator + ( std::string str, Foo f);
    

    This however is tedious work and must be tested thoroughly. Best of luck!

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I know that I can do something like $int = (int)99; //(int) has a
I know that I can use implicit conversions with a class as follows but
I know that we cant use assignment operator in if statements in java as
I know that we can't overload operator with other meaning, we can't create new
I know that you can use a dummy int parameter on operator++ and operator--
I know that |DataDirectory| will resolve to App_Data in an ASP.NET application but is
I want to write a 'Date' class that behaves like a Value Type. for
I know that Qobjects are supposed to be identities not values eg you cannot
I mean, we all know that there is the negation logical operator ! ,
I did not see anything that address my particular code problem. I have a

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.