• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

C Builder, przeciążenie operatora =

VPS Starter Arubacloud
0 głosów
179 wizyt
pytanie zadane 10 czerwca 2018 w C i C++ przez Fretkamaciejek Nowicjusz (190 p.)

Witam :D

W projekcie robionym w c builderze che przeciążyć operator "=" w taki sposób by zapis:

AnsiString litera=Form1->Wlitera;

przypisywał do litery tekst tekst wpisany w "Wlitera", która jest komponentem typu TLabeledEdit

Moje przeciążenie wygląda tak:

AnsiString operator =(TLabeledEdit *Okno)
          {
                 return Okno->Text;
          }

Jednak program się nie kompiluje i wyskakuje błąd : Cannot convert 'TLabeledEdit*' to 'AnsiString'

Oczywiście wiem że sam pomysł jest troche zbędny, bo zaoszczędza wpisania tylko "->Text" na końcu tworzenia AnsiStringa, jednak i tak zależy mi na tym przeciążeniu.

Z góry dziękuję za pomoc :)

Pozdrawiam!

1 odpowiedź

+1 głos
odpowiedź 10 czerwca 2018 przez monika90 Pasjonat (22,940 p.)
edycja 10 czerwca 2018 przez monika90

AnsiString litera=Form1->Wlitera;

Powyższy zapis nie używa operatora przypisania, bo to jest inicjalizacja.

Żeby to działało to musiałbyś dopisać do klasy AnsiString konstruktor konwertujący:

class AsniString
{
public:
   AnsiString(TLabeledEdit* edit)
   {
   }
};

albo operator konwersji dodać do klasy TLabeledEdit:

class TLabeledEdit
{
public:
    operator AnsiString () const
    {
         return /*...*/;
    }
};

//trzeba będzie dodać gwiazdkę z przodu:
AnsiString litera = *Form1->Wlitera; 

Jeżeli to są klasy z biblioteki VCL, to raczej ci się to nie uda, ale kto wie, może się da?

Podobne pytania

+1 głos
2 odpowiedzi 368 wizyt
pytanie zadane 14 czerwca 2021 w C# przez everstudybee Użytkownik (670 p.)
0 głosów
0 odpowiedzi 200 wizyt
pytanie zadane 27 stycznia 2021 w C i C++ przez Miaugosia Nowicjusz (210 p.)
0 głosów
1 odpowiedź 177 wizyt
pytanie zadane 3 marca 2018 w C i C++ przez pewien_programista Obywatel (1,070 p.)

93,024 zapytań

141,986 odpowiedzi

321,290 komentarzy

62,371 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 2

Można już zamawiać tom 2 książki "Wprowadzenie do bezpieczeństwa IT" - będzie to około 650 stron wiedzy o ITsec (17 rozdziałów, 14 autorów, kolorowy druk).

Planowana premiera: 30.09.2024, zaś planowana wysyłka nastąpi w drugim tygodniu października 2024.

Warto preorderować, tym bardziej, iż mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy dodatkowe 15% zniżki! Dziękujemy zaprzyjaźnionej ekipie Sekuraka za kod dla naszej Społeczności!

...