2016-05-10 8 views
0

I eine Klasse MyClassC++ statische oder nicht-statische Templat Elementfunktionen

class MyClass 
{ 
    template <std::size_t N> 
    void MyFunc() { // Do something with N }; 
}; 

Dann haben, ist MyFunc eine statische oder nicht-statische Elementfunktion?

+0

Haben Sie versucht, Ihren Code zu kompilieren? – TartanLlama

+0

Das ist, was ich wirklich wissen möchte –

+0

Für eine 'statische' Methode müssen Sie ein' static' Schlüsselwort vor seinen Rückgabetyp setzen. Die Antwort ist so klein, dass ich als Kommentar und Verknüpfung ein Duplikat für die weitere Referenz ansetze. – iammilind

Antwort

2

Es ist eine nicht statische Elementfunktionsvorlage. Wenn Sie es mit static deklarierten, dann wäre es eine statische Elementfunktionsvorlage.

MyFunc<0> ist ein nicht-statische Member-Funktion, so dass Sie würde es wie so nennen (unter der Annahme, dass Sie es öffentlich gemacht):

MyClass c{}; 
c.MyFunc<0>(); 
Verwandte Themen