Moduły są alternatywą dla #includes. Clang has a complete implementation for C++. W jaki sposób chciałbym przejść, jeśli chcę teraz używać modułów przy użyciu Clanga?Jak używać modułów C++ w Clang?
Stosując
import std.io;
w C++ pliku źródłowego nie działa (kompilacji), jednak, jak w opisie dla modułów (który zawiera składni) nie jest ostateczny.
W Clang documentation stwierdza, że przy przejściu flagę -fmodules
, właczoną zostaną przepisane do ich odpowiednich importu. Jednak sprawdzanie preprocesor sugeruje inaczej (test.cpp zawiera tylko #include <stdio.h>
i pusty główny):
$ clang++-3.5 -fmodules -E test.cpp -o test
$ grep " printf " test
extern int printf (const char *__restrict __format, ...);
Ponadto kompilacji tego pliku testowego z -fmodules
vs flagi w ogóle nie produkuje ten sam plik obiektowy.
Co robię źle?
Działa to również z Xcode 9. –