/ORDER (Ustaw funkcje w kolejności)
/ORDER:@filename
Parametry
- Nazwa pliku
Plik tekstowy, określający kolejność łączenia dla funkcji COMDAT.
Uwagi
Opcja /ORDER informuje łącze, aby zoptymalizować program poprzez umieszczenie niektórych COMDATs do obrazu w określonej kolejności.ŁĄCZE umieszcza funkcje w kolejności określonej w obrębie każdej sekcji w obrazie.
Określić kolejność Nazwa pliku, który jest plikiem tekstowym (plik odpowiedzi) zawiera listę COMDATs w kolejności, aby je połączyć.Każdy wiersz w Nazwa pliku zawiera nazwę jednego COMDAT.Obiekt zawiera COMDATs, jeśli został wcześniej skompilowany z opcją /Gy.Nazwy funkcji jest uwzględniana wielkość liter.
Używa łącza urządzone formularze identyfikatorów.Podczas tworzenia pliku .obj, kompilator zdobi identyfikator.Użycie DUMPBIN narzędzie, aby uzyskać dekoracyjną formie identyfikatora, kiedy trzeba określić, aby program łączący.Aby uzyskać więcej informacji dotyczących nazwy dekoracyjne, zobacz Zdobione nazwy.
Jeśli jest używany więcej niż jeden /ORDER specyfikacji, ostatnia z nich określone staje się skuteczne.
Zamawianie pozwala na zachowanie stronicowania swojego programu za pośrednictwem swap dostrajania przez grupowanie z funkcjami, które wywołuje funkcję optymalizacji.Można także pogrupować często wybieranych funkcji.Te techniki zwiększyć prawdopodobieństwo, że jest wywoływana funkcja w pamięci, gdy jest potrzebne i nie będą musiały być stronicowana z dysku.
Program łączący będzie dołączana znaku podkreślenia (_) do każdej nazwy urządzone w Nazwa pliku , chyba że nazwa rozpoczyna się znakiem zapytania (?) lub znak (@).Na przykład, jeśli plik obiektu zawiera extern "C" int func(int) i int main(void), DUMPBIN /SYMBOLS wyświetli listę tych specjalnie oznaczonymi nazwami:
009 00000000 SECT3 notype () External | _func
00A 00000008 SECT3 notype () External | _main
Nazwa określona w pliku kolejności należy jednak func i main.
Opcja /ORDER wyłącza, łączenie przyrostowych.
[!UWAGA]
ŁĄCZE nie zamówienia funkcji statycznej, ponieważ funkcja statyczna nazwy nie są nazwami symbol publicznych.Po określeniu /ORDER linker ostrzeżenie LNK4037 jest generowany dla każdego symbolu w pliku kolejności, czyli statycznych lub nie można odnaleźć.
Aby ustawić opcję konsolidatora w środowisku programowania Visual Studio
Otwórz okno dialogowe Strony właściwości projektu.Aby uzyskać szczegółowe informacje, zobacz Konfigurowanie właściwości projektu programu Visual C++.
Kliknij folder Konsolidator.
Kliknij przycisk optymalizacji strona właściwości.
Modyfikowanie Zamówienia funkcja właściwości.
Aby programowo ustawić opcję konsolidatora
- Zobacz FunctionOrder.