Tag: pointer-to-member
dieses tag wird normalerweise verwendet, mit Fragen über das erstellen eines Zeigers auf eine nicht-statische member-Funktion einer Klasse in der Programmiersprache C++. Für standard-Funktionszeigern in C und C++ mit dem tag ` – Funktion-Zeiger “ statt. Für Fragen zu functor-Objekte in C++ verwenden, die `Funktor` tag.
1
Antworten
Ich versuche einen Zeiger auf eine bestimmte version einer überlastet member-Funktion. Hier ist das Beispiel: class C { bool f(int) { ... } bool f(double) { ... } bool example() { //I want to get the "double"
6
Antworten
Ich vermute, dass dies unmöglich ist, aber dachte, ich würde bitten. Sagen wir ich habe eine Klasse mit einer Methode: class A { public: void b(int c); }; Kann ich einen Zeiger auf member-Funktion: void (A::*ptr)(int) =
4
Antworten
Möchte ich einen Zeiger auf eine Klasse als template-parameter ein, wie in: template <class Class, class Result, Result Class::*Member> struct MyStruct { //... }; Verwendung dieser Struktur wie MyStruct<SomeClass, SomeResult, &SomeClass::value> variable funktioniert Prima, aber ich mag
4
Antworten
Sieht es aus wie std::cout kann nicht drucken, Mitglied, Funktion, Anschrift, zum Beispiel: #include <iostream> using std::cout; using std::endl; class TestClass { void MyFunc(void); public: void PrintMyFuncAddress(void); }; void TestClass::MyFunc(void) { return; } void TestClass::PrintMyFuncAddress(void) { printf("%p\n",
5
Antworten
Gegeben, ein Beispiel der Klasse: class Fred { public: Fred() { func = &Fred::fa; } void run() { int foo, bar; *func(foo,bar); } double fa(int x, int y); double fb(int x, int y); private: double (Fred::*func)(int x,
7
Antworten
Die Frage ist die folgende: betrachten Sie diese Stück code: #include <iostream> class aClass { public: void aTest(int a, int b) { printf("%d + %d = %d", a, b, a + b); } }; void function1(void (*function)(int,
5
Antworten
Ich bin derzeit mit GCC 4.4, und ich bin mir ziemlich Kopfschmerzen casting zwischen void* und einen Zeiger auf member-Funktion. Ich bin versucht zu schreiben, eine einfach zu bedienende Bibliothek für das binden von C++ - Objekten
5
Antworten
Die Frage ist die folgende: betrachten Sie diese Stück code: #include <iostream> class aClass { public: void aTest(int a, int b) { printf("%d + %d = %d", a, b, a + b); } }; void function1(void (*function)(int,
6
Antworten
Ja, ich habe gesehen, diese Frage und diese FAQ (falscher link) diese FAQaber ich noch nicht verstehen, was ->* und .* bedeuten in C++. Diese Seiten bieten Informationen über den Operatoren (wie überlastung), aber offenbar nicht gut
2
Antworten
Fand ich etwas Interessantes. Die Fehlermeldung sagt alles. Was ist der Grund hinter, der nicht erlaubt Klammern während der Einnahme der Adresse eines nicht-statische member-Funktion? Ich habe es kompiliert on-gcc 4.3.4. #include <iostream> class myfoo{ public: int