Heim >Backend-Entwicklung >C++ >Ist Stateful Metaprogramming in C zum Scheitern verurteilt?

Ist Stateful Metaprogramming in C zum Scheitern verurteilt?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-16 02:12:02577Durchsuche

Is Stateful Metaprogramming Doomed in C  ?

Stateful Metaprogramming: In C immer noch schlecht ausgebildet

Stateful Metaprogramming, auch bekannt als „Constexpr-Zähler“, hat seit seiner Einführung war Gegenstand von Faszination und Debatte. Mit dieser Technik können Entwickler Metadaten innerhalb von Vorlagenfunktionen erfassen und abrufen und so die Zustandsspeicherung in der Metaprogrammierung ermöglichen.

Bedenken und die CWG

Die C Working Group (CWG) hat dies erkannt Bedenken hinsichtlich zustandsbehafteter Metaprogrammierung. In Active Issue 2118 wird darauf hingewiesen, dass solche Techniken geheimnisvoll sind und schlecht gestaltet werden sollten. Im Mai 2015 stimmte die CWG dem Verbot dieser Praktiken zu, obwohl der genaue Mechanismus hierfür noch ungeklärt ist.

Nachwirkungen und Schlussfolgerung

Trotz ihrer Rechtmäßigkeit in C 14 Der Status der zustandsbehafteten Metaprogrammierung bleibt in der Schwebe. Bis ein formeller Verbotsmechanismus eingerichtet ist, kann er als gültige Technik bestehen bleiben. Es ist jedoch wichtig zu beachten, dass die CWG es rückwirkend als DR anordnen kann, wenn ein geeigneter Mechanismus entwickelt wird. Obwohl zustandsbehaftete Metaprogrammierung derzeit machbar sein mag, ist ihre Zukunft in C ungewiss.

Das obige ist der detaillierte Inhalt vonIst Stateful Metaprogramming in C zum Scheitern verurteilt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn