|
| 1 | + C/C++ ������ѡ�� |
| 2 | + |
| 3 | + |
| 4 | + -��- |
| 5 | + |
| 6 | +/O1 ����Ż�(��ѡ�ռ�) /O2 ����Ż�(��ѡ�ٶ�) |
| 7 | +/Ob<n> ������չ(Ĭ�� n=0) /Od �����Ż�(Ĭ��) |
| 8 | +/Og ����ȫ���Ż� /Oi[-] �����ڲ����� |
| 9 | +/Os ��ѡ����ռ� /Ot ��ѡ�����ٶ� |
| 10 | +/Ox �Ż�(��ѡ�ٶ�) |
| 11 | +/favor:<blend|AMD64|INTEL64|ATOM> ѡ���Ż�����ԵĴ�������Ϊ����ֵ֮һ: |
| 12 | + blend - ��Լ��ֲ�ͬ x64 ���������Ż���� |
| 13 | + AMD64 - 64 λ AMD ������ |
| 14 | + INTEL64 - Intel(R)64 �ܹ������� |
| 15 | +ATOM - Intel(R) Atom(TM) ������ |
| 16 | + |
| 17 | + -��������- |
| 18 | + |
| 19 | +/Gu[-] ȷ�� distinct �������з��ظ���ַ /Gw[-] �ָ���������ȫ�ֱ��� |
| 20 | +/GF ����ֻ���ַ����� /Gm[-] ������С�������� |
| 21 | +/Gy[-] �ָ����������� /GS[-] ���ð�ȫ��� |
| 22 | +/GR[-] ���� C++ RTTI /GX[-] ���� C++ EH (�� /EHsc ��ͬ) |
| 23 | +/guard:cf[-] ���� CFG (����������) /EHs ���� C++ EH (û�� SEH �쳣) |
| 24 | +/EHa ���� C++ EH (w/ SEH �쳣) /EHc �ⲿ "C" Ĭ��Ϊ nothrow |
| 25 | +/EHr ʼ������ noexcept ����ʱ��ֹ��� |
| 26 | +/fp:<except[-]|fast|precise|strict> ѡ��ģ��: |
| 27 | + except[-] - �����ɴ���ʱ���Ǹ����쳣 |
| 28 | + fast - "fast" ����ģ�ͣ������Ԥ���ԱȽϵ� |
| 29 | + precise - "precise" ����ģ�ͣ������Ԥ�� |
| 30 | + strict - "strict" ����ģ��(��ζ�� /fp:except) |
| 31 | +��ʹʹ�� /fp:except��/Qfast_transcendentals Ҳ���������ڲ� FP |
| 32 | +/Qspectre[-] �� CVE 2017-5753 ���û����ʩ |
| 33 | +/Qpar[-] ���ò��д������� |
| 34 | +/Qpar-report:1 �Զ����л���ϣ�ָʾ�Ѳ��л�ѭ�� |
| 35 | +/Qpar-report:2 �Զ����л���ϣ�ָʾδ���л�ѭ�� |
| 36 | +/Qvec-report:1 �Զ���������ϣ�ָʾ��������ѭ�� |
| 37 | +/Qvec-report:2 �Զ���������ϣ�ָʾδ������ѭ�� |
| 38 | +/GL[-] ��������ʱ�������� /volatile:<iso|ms> ѡ��ɱ�ģ��: |
| 39 | + iso - Acquire/release ����Կɱ���ʲ�һ����Ч |
| 40 | + ms - Acquire/release ����Կɱ����һ����Ч |
| 41 | +/GA Ϊ Windows Ӧ�ó�������Ż� /Ge �����к���ǿ�ƶ�ջ��� |
| 42 | +/Gs[num] ���ƶ�ջ������ /Gh ���� _penter �������� |
| 43 | +/GH ���� _pexit �������� /GT �����˳̰�ȫ TLS ���� |
| 44 | +/RTC1 ���ÿ��ټ��(/RTCsu) /RTCc ת��Ϊ��С�����ͼ�� |
| 45 | +/RTCs ��ջ֡����ʱ��� /RTCu δ��ʼ���ľֲ��÷���� |
| 46 | +/clr[:option] Ϊ������������ʱ���룬���� option ��: |
| 47 | + pure - ����ֻ���� IL ������ļ�(û�б�����ִ�д���) |
| 48 | + safe - ����ֻ���� IL �Ŀ���֤����ļ� |
| 49 | + initialAppDomain - ���� Visual C++ 2002 �ij�ʼ AppDomain ��Ϊ |
| 50 | + noAssembly - ���������� nostdlib - ����Ĭ�ϵ� \clr Ŀ¼ |
| 51 | +/homeparams ǿ�ƽ�����Ĵ����IJ���д�뵽��ջ�� |
| 52 | +/GZ ���ö�ջ���(/RTCs) |
| 53 | +/arch:AVX ����ʹ��֧�� AVX �� CPU ���õ�ָ�� |
| 54 | +/arch:AVX2 ����ʹ��֧�� AVX2 �� CPU ���õ�ָ�� |
| 55 | +/Gv __vectorcall ����Լ�� |
| 56 | + |
| 57 | + -����ļ�- |
| 58 | + |
| 59 | +/Fa[file] ���������б��ļ� /FA[scu] ���ó����б� |
| 60 | +/Fd[file] ���� .PDB �ļ� /Fe<file> ������ִ���ļ� |
| 61 | +/Fm[file] ����ӳ���ļ� /Fo<file> ���������ļ� |
| 62 | +/Fp<file> ����Ԥ����ͷ�ļ� /Fr[file] ����Դ������ļ� |
| 63 | +/FR[file] ������չ .SBR �ļ� /Fi[file] ����Ԥ�������ļ� |
| 64 | +/Fd: <file> ���� .PDB �ļ� /Fe: <file> ������ִ���ļ� |
| 65 | +/Fm: <file> ����ӳ���ļ� /Fo: <file> ���������ļ� |
| 66 | +/Fp: <file> ���� .PCH �ļ� /FR: <file> ������չ .SBR �ļ� |
| 67 | +/Fi: <file> ����Ԥ�������ļ� |
| 68 | +/doc[file] ���� XML �ĵ�ע�ͣ�����ѡ������ .xdc �ļ� |
| 69 | + |
| 70 | + -Ԥ������- |
| 71 | + |
| 72 | +/AI<dir> ���ӵ���������·�� /FU<file> ǿ��ʹ�ó���/ģ�� |
| 73 | +/C �����ע�� /D<name>{=|#}<text> ����� |
| 74 | +/E Ԥ������ stdout /EP Ԥ������ stdout�����к� |
| 75 | +/P Ԥ�������ļ� /Fx ������Ĵ���ϲ����ļ��� |
| 76 | +/FI<file> ����ǿ�ư����ļ� /U<name> �Ƴ�Ԥ����ĺ� |
| 77 | +/u �Ƴ�����Ԥ����ĺ� /I<dir> ���ӵ���������·�� |
| 78 | +/X ���ԡ���λ�á� /PH ��Ԥ����ʱ���� #pragma file_hash |
| 79 | + |
| 80 | + -����- |
| 81 | + |
| 82 | +/std:<c++14|c++17|c++latest> C++ ���� |
| 83 | + c++14 �C ISO/IEC 14882:2014 (Ĭ��) |
| 84 | + c++17 �C ISO/IEC 14882:2017 |
| 85 | + c++latest �C ���²ݰ���(���ܼ��ɸ���) |
| 86 | +/permissive[-] ʹijЩ�Ƿ��ϴ���ɱ���(���ܼ��ɸ���)(Ĭ�Ͽ���) |
| 87 | +/Ze ������չ(Ĭ��) /Za ������չ |
| 88 | +/ZW ���� WinRT ������չ /Zs ֻ�������� |
| 89 | +/Zc:arg1[,arg2] C++ ���ԺϹ��ԣ�����IJ���������: |
| 90 | + forScope[-] �Է�Χ����ǿ��ʹ�ñ� C++ |
| 91 | + wchar_t[-] wchar_t �DZ������ͣ����� typedef |
| 92 | + auto[-] �� auto ǿ��ʹ���µı� C++ ���� |
| 93 | + trigraphs[-] ������Ԫ��(Ĭ�Ϲر�) |
| 94 | + rvalueCast[-] ǿ��ʵʩ�� C++ ��ʽ����ת������ |
| 95 | + strictStrings[-] ���ô��ַ����ı��� [char|wchar_t]* |
| 96 | + ��ת��(Ĭ�Ϲر�) |
| 97 | + implicitNoexcept[-] �ڱ���ĺ�����������ʽ noexcept |
| 98 | +threadSafeInit[-] �����̰߳�ȫ�ı��ؾ�̬��ʼ�� |
| 99 | + inline[-] remove unreferenced function or data if it is |
| 100 | + COMDAT or has internal linkage only (off by default) |
| 101 | + sizedDealloc[-] enable C++14 global sized deallocation |
| 102 | + functions (on by default) |
| 103 | + throwingNew[-] ��������� new �ڹ���ʱ����(Ĭ�Ϲر�) |
| 104 | + referenceBinding[-] ��ʱ���ò�����dz��� |
| 105 | + lvalue ����(Ĭ�Ϲر�) |
| 106 | + twoPhase- �����������Ʋ��� |
| 107 | + ternary[-] �����������ǿ��ʹ�� C++11 ����(Ĭ�Ϲر�) |
| 108 | + noexceptTypes[-] ǿ��ִ�� C++17 noexcept ����(�� C++17 ����߰汾��Ĭ�Ͽ���) |
| 109 | + alignedNew[-] �Զ�̬����Ķ������� C++17 ���뷽ʽ(Ĭ�Ͽ���) |
| 110 | +/await ���ÿɻָ�������չ |
| 111 | +/constexpr:depth<N> constexpr �����ĵݹ��������(Ĭ��ֵ: 512) |
| 112 | +/constexpr:backtrace<N> ���������ʾ N constexpr ����(Ĭ��ֵ: 10) |
| 113 | +/constexpr:steps<N> �� N ���������ֹ constexpr ����(Ĭ��ֵ: 100000) |
| 114 | +/Zi ���õ�����Ϣ /Z7 ���þ�ʽ������Ϣ |
| 115 | +/Zo[-] Ϊ�Ż��Ĵ������ɸ��ḻ�ĵ�����Ϣ(Ĭ�Ͽ���) |
| 116 | +/ZH:SHA_256 �ڵ�����Ϣ(ʵ��)�н� SHA256 �����ļ�У��� |
| 117 | +/Zp[n] �� n �ֽڱ߽��ϰ�װ�ṹ /Zl ʡ�� .OBJ �е�Ĭ�Ͽ��� |
| 118 | +/vd{0|1|2} ����/���� vtordisp /vm<x> ָ���Ա��ָ������ |
| 119 | +/ZI ���á��༭��������������Ϣ /openmp ���� OpenMP 2.0 ������չ |
| 120 | + |
| 121 | + - ���� - |
| 122 | + |
| 123 | +@<file> ѡ����Ӧ�ļ� /?, /help ��ӡ�˰�����Ϣ |
| 124 | +/bigobj ������չ�Ķ����ʽ /c ֻ���룬������ |
| 125 | +/errorReport:option ���ڲ������������ Microsoft |
| 126 | + none - �����ͱ��� prompt - ��ʾ�������ͱ��� |
| 127 | + queue - ����һ�ι���Ա��¼ʱ����ʾ���ͱ���(Ĭ��) |
| 128 | + send - �Զ����ͱ��� /FC �����ʹ������·���� |
| 129 | +/H<num> ����ⲿ���Ƴ��� /J Ĭ�� char ������ unsigned |
| 130 | +/MP[n] ���ʹ�á�n�������̽��б��� /nologo ȡ����ʾ��Ȩ��Ϣ |
| 131 | +/showIncludes ��ʾ�����ļ��� /Tc<source file> ���ļ�����Ϊ .c |
| 132 | +/Tp<source file> ���ļ�����Ϊ .cpp /TC �������ļ�����Ϊ .c |
| 133 | +/TP �������ļ�����Ϊ .cpp /V<string> ���ð汾�ַ��� |
| 134 | +/Yc[file] ���� .PCH �ļ� /Yd ��������Ϣ����ÿ�� .OBJ �� |
| 135 | +/Yl[sym] Ϊ���Կ���� .PCH ���� /Yu[file] ʹ�� .PCH �ļ� |
| 136 | +/Y- �������� PCH ѡ�� /Zm<n> ����ڴ����(Ĭ��ֵ�İٷֱ�) |
| 137 | +/FS ǿ��ʹ�� MSPDBSRV.EXE |
| 138 | +/source-charset:<iana-name>|.nnnn ��Դ�ַ��� |
| 139 | +/execution-charset:<iana-name>|.nnnn ��ִ���ַ��� |
| 140 | +/utf-8 ��Դ�͵� UTF-8 ��ִ���ַ��� |
| 141 | +/validate-charset[-] ��֤ UTF-8 �ļ��Ƿ�ֻ�кϷ��ַ� |
| 142 | + |
| 143 | + -����- |
| 144 | + |
| 145 | +/LD ���� .DLL /LDd ���� .DLL ���Կ� |
| 146 | +/LN ���� .netmodule /F<num> ���ö�ջ��С |
| 147 | +/link [������ѡ��Ϳ�] /MD �� MSVCRT.LIB ���� |
| 148 | +/MT �� LIBCMT.LIB ���� /MDd �� MSVCRTD.LIB ���Կ����� |
| 149 | +/MTd �� LIBCMTD.LIB ���Կ����� |
| 150 | + |
| 151 | + -�������- |
| 152 | + |
| 153 | +/analyze[-] ���ñ������� /analyze:quiet[-] û�жԿ���̨�ľ��� |
| 154 | +/analyze:log<name> ���ļ��ľ��� /analyze:autolog Log to *.pftlog |
| 155 | +/analyze:autolog:ext<ext> Log to *.<ext>/analyze:autolog- ����־�ļ� |
| 156 | +/analyze:WX- ���治���� /analyze:stacksize<num> ����ջ֡ |
| 157 | +/analyze:max_paths<num> ���·�� /analyze:only Analyze, no code gen |
| 158 | + |
| 159 | + -���- |
| 160 | + |
| 161 | +/diagnostics:<args,...> ���������Ϣ�ĸ�ʽ: |
| 162 | + ��ͳ�� - ����֮ǰ�ĸ�ʽ |
| 163 | + ��[-] - ��ӡ����Ϣ |
| 164 | + �����[-] - ��ӡ�к�Դ��ָʾ�� |
| 165 | +/Wall ��������� /w ��������� |
| 166 | +/W<n> ���þ���ȼ�(Ĭ�� n=1) |
| 167 | +/Wv:xx[.yy[.zzzzz]] ������ xx.yy.zzzzz �汾������ľ��湦�� |
| 168 | +/WX ��������Ϊ���� /WL ���õ������ |
| 169 | +/wd<n> ���þ��� n /we<n> ������ n ��Ϊ���� |
| 170 | +/wo<n> ����һ�ξ��� n /w<l><n> Ϊ n ���þ���ȼ� 1-4 |
| 171 | +/external:I <path> �C �ⲿ��ͷ��λ�� |
| 172 | +/external:env:<var> �C �ⲿ��ͷλ�õĻ������� |
| 173 | +/external:anglebrackets�C ������ͨ�� <> �����ı�ͷ��Ϊ�ⲿ |
| 174 | +/external:W<n> �C �ⲿ��ͷ�ľ��漶�� |
| 175 | +/external:templates[-] �C ��ģ��ʵ�������������漶�� |
| 176 | +/sdl ֧��������ȫ���ܺ;��� |
| 177 | + |
0 commit comments