Partilhar via


Regras do modo de lotes

{frompath}.fromext{topath}.toext::
   commands

Regras de inferência do modo de lotes fornecem apenas uma invocação da regra de inferência ao n comandos passam por esta regra de inferência de tipos. Sem regras de inferência do modo de lotes, ele exigiria n comandos a ser invocado. N é o número de dependentes acionar a regra de inferência de tipos.

Makefiles contêm regras de inferência do modo em lotes deve usar NMAKE versão 1.62 ou superior. Para verificar a versão NMAKE, execute a macro _NMAKE_VER disponível com NMAKE versão 1.62 ou superior. Esta macro retorna um string que representa a versão do produto Visual C++.

A diferença sintática somente da regra padrão de inferência de tipos é que a regra de inferência do modo de lotes é encerrada com dois-pontos duplo (::).

ObservaçãoObservação

A ferramenta que está sendo chamada deve ser capaz de lidar com vários arquivos. A regra de inferência do modo em lotes deve usar $< como a macro para acessar arquivos dependentes.

As regras de inferência do modo em lotes podem acelerar o processo de compilação. É mais rápido para fornecer os arquivos para o compilador em lote, porque o driver do compilador é chamado somente uma vez. Por exemplo, o compilador c e C++ tem melhor desempenho quando estiver manipulando um conjunto de arquivos porque ele pode permanecer residente durante o processo de memória.

O exemplo a seguir mostra como usar as regras de inferência do modo de lotes:

# sample makefile to illustrate batch-mode inference rules
O = .
S = .
Objs = $O/foo1.obj $O/foo2.obj $O/foo2.obj $O/foo3.obj $O/foo4.obj
CFLAGS = -nologo

all : $(Objs)

!ifdef NOBatch
{$S}.cpp{$O}.obj:
!else
{$S}.cpp{$O}.obj::
!endif
   $(CC) $(CFLAGS) -Fd$O\ -c $<

$(Objs) :

#end of makefile

NMAKE produz a saída sem regras de inferência do modo de lotes a seguir:

E:\tmp> nmake -f test.mak -a NOBatch=1

Microsoft (R) Program Maintenance Utility   Version 7.00.0000
Copyright (C) Microsoft Corp 1988-2001. All rights reserved.
        cl -nologo -Fd.\ -c .\foo1.cpp
foo1.cpp
        cl -nologo -Fd.\ -c .\foo2.cpp
foo2.cpp
        cl -nologo -Fd.\ -c .\foo3.cpp
foo3.cpp
        cl -nologo -Fd.\ -c .\foo4.cpp
foo4.cpp

NMAKE produz o seguinte resultado com as regras de inferência do modo de lotes:

E:\tmp> nmake -f test.mak -a

Microsoft (R) Program Maintenance Utility   Version 7.00.0000
Copyright (C) Microsoft Corp 1988-2001. All rights reserved.

        cl -nologo -Fd.\ -c .\foo1.cpp .\foo2.cpp .\foo3.cpp .\foo4.cpp
foo1.cpp
foo2.cpp
foo3.cpp
foo4.cpp
Generating Code...

Consulte também

Conceitos

Regras de inferência de tipos