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

Jaki zapis wskaźnika na funkcję jest lepszy?

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
784 wizyt
pytanie zadane 26 kwietnia 2016 w C i C++ przez Konrad Nabożny Stary wyjadacz (13,480 p.)

Witam. Lepiej napisać coś takiego:

#include <iostream>

using namespace std;

void funkcja()
{
    cout<<"napis";
}

int main()
{
    void (*wskaznik) () = funkcja;

    wskaznik();

    return 0;
}

 

Czy takiego: 

#include <iostream>

using namespace std;

void funkcja()
{
    cout<<"napis";
}

int main()
{
    void (*wskaznik) ();

    wskaznik = &funkcja;

    wskaznik();

    return 0;
}

 

2 odpowiedzi

+3 głosów
odpowiedź 26 kwietnia 2016 przez adrian17 Mentor (350,120 p.)
wybrane 26 kwietnia 2016 przez Konrad Nabożny
 
Najlepsza

Najprościej:

auto ptr = &funkcja;

 

komentarz 26 kwietnia 2016 przez Radfler VIP (101,030 p.)
Chodź na chat, pokaż kod... :D
komentarz 26 kwietnia 2016 przez niezalogowany
ale inni też by chcieli wiedzieć prawda??
komentarz 26 kwietnia 2016 przez Radfler VIP (101,030 p.)
Masz kod o który pytał. Nic wielkiego: http://wklej.org/id/2350795/
komentarz 26 kwietnia 2016 przez Konrad Nabożny Stary wyjadacz (13,480 p.)
Okazało się że to moje małe niedopatrzenie, porady użytkownika @Radfler okazały się w 100% poprawne :)
1
komentarz 26 kwietnia 2016 przez niezalogowany
nie uważaj tego za moje nerwy czy coś, ale inni też by chcieli wiedzieć i jak coś to możemy odesłać ich do tego tematu :)
+1 głos
odpowiedź 26 kwietnia 2016 przez daan Pasjonat (17,640 p.)

Ja bym użył 1 sposobu, ale nie wiem czy jest on faktycznie lepszy. No i zależy też czy od razu możesz coś przypisać, czasami decyzja o przypisaniu zapada później, wtedy używasz 2 opcji. Ale jeżeli to c++ to polecam spróbować z std::function, też ciekawa opcja.

1
komentarz 26 kwietnia 2016 przez adrian17 Mentor (350,120 p.)
std::function jest znacznie cieższym uniwerwalnym wrapperem, nie powinno się go używać do zwykłych wskaźników na funkcje.
komentarz 26 kwietnia 2016 przez daan Pasjonat (17,640 p.)
Tego pod uwagę nie wziąłem, ale w takim wypadku i ja się czegoś dowiedziałem :)

Podobne pytania

0 głosów
1 odpowiedź 179 wizyt
0 głosów
1 odpowiedź 1,661 wizyt
pytanie zadane 25 sierpnia 2019 w C i C++ przez DamianW Bywalec (2,080 p.)
0 głosów
0 odpowiedzi 178 wizyt
pytanie zadane 15 marca 2016 w C i C++ przez falauthy Stary wyjadacz (11,550 p.)

93,109 zapytań

142,087 odpowiedzi

321,610 komentarzy

62,449 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 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...