Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Hur skapa en vector av funktionspekare

Postades av 2007-11-11 15:27:51 - Fredrik Olofsson, i forum c++, Tråden har 3 Kommentarer och lästs av 1694 personer

Hejsan!
Hur skapar man en std::vektor av funktionpekare, så man kan t ex bara kan skriva typ:
<code>
int any(const History & a){
/* kod här*/
}


int yna(const History & a){
/* kod här*/
}

Hostory history;
std::vector<int (x)(const History & a) functions;
functions.push_back(any);
functions.push_back(yna);
for(int i=0;i<functions.size();i++){
functions[i](history); //här ska den köra funktionerna...
}
</code>

Jag har nämligen massor av funktioner som ska anropas flera gånger, men vill inte skriva alla funktions namn om igen o så, lättare ju om man bara kunde lägga alla i en vektor o sedan köra alla via en for loop.

Mycket Tacksam för svar.

Tack på förhand!


Svara

Sv: Hur skapa en vector av funktionspekare

Postades av 2007-11-11 17:03:02 - Martin Adrian

Använd inte funktionspekare i C++. De är en kvarleva från C.

Bättre att använda funktionsobjekt från tr1 eller boost.

typedef std::vector<tr1::function<int (const History&)> > funcvector;

Eller varför inte en färdig komponent som boost::signal

boost::signal<int (const History&)> funcs;
funcs.connect(any);
funcs.connecy(yna);
funcs(history); // anropar alla och returnerar sista värdet


Svara

Sv:Hur skapa en vector av funktionspekare

Postades av 2007-11-11 20:56:58 - Fredrik Olofsson

Tyvärr, kan jag inte få igång boost eller boost::tr1, men hur löser man det utan boost?


Svara

Sv: Hur skapa en vector av funktionspekare

Postades av 2007-11-11 21:20:10 - Fredrik Olofsson

Löste det precis, Tack för hjälpen!


Svara

Nyligen

  • 19:13 Международная перевозка грузов
  • 00:01 DL Van Tuning | Exclusive Body Kit
  • 12:08 Indian casino
  • 04:14 Vad finns det för kratomalternativ
  • 14:16 Indian online casino
  • 14:15 Indian online casino
  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 867
27 962
271 767
499
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies