Skip to content

Commit e73557b

Browse files
committed
Merge branch 'master' of github.com:Microsoft/vsdocs into ghogen-deploy
2 parents 1db0662 + edc1262 commit e73557b

File tree

1,309 files changed

+23211
-20351
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,309 files changed

+23211
-20351
lines changed

.localization-config

Lines changed: 0 additions & 34 deletions
This file was deleted.

.openpublishing.publish.config.json

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,38 @@
88
"build_source_folder": "docs",
99
"build_output_subfolder": "vsdocsdocs",
1010
"locale": "en-us",
11-
"version": 0,
11+
"monikers": [],
1212
"open_to_public_contributors": true,
1313
"type_mapping": {
1414
"Conceptual": "Content",
1515
"ManagedReference": "Content",
1616
"RestApi": "Content"
1717
},
1818
"template_folder": "_themes",
19-
"is_dynamic_rendering": false
19+
"version": 0
2020
},
2121
{
2222
"docset_name": "scripting-docs",
2323
"build_source_folder": "scripting-docs",
2424
"build_output_subfolder": "scripting-docs",
2525
"locale": "en-us",
26-
"version": 0,
26+
"monikers": [],
27+
"open_to_public_contributors": true,
28+
"type_mapping": {
29+
"Conceptual": "Content",
30+
"ManagedReference": "Content",
31+
"RestApi": "Content"
32+
},
33+
"build_entry_point": "docs",
34+
"template_folder": "_themes",
35+
"version": 0
36+
},
37+
{
38+
"docset_name": "mac",
39+
"build_source_folder": "mac",
40+
"build_output_subfolder": "mac",
41+
"locale": "en-us",
42+
"monikers": [],
2743
"open_to_public_contributors": false,
2844
"type_mapping": {
2945
"Conceptual": "Content",
@@ -32,7 +48,7 @@
3248
},
3349
"build_entry_point": "docs",
3450
"template_folder": "_themes",
35-
"is_dynamic_rendering": false
51+
"version": 0
3652
}
3753
],
3854
"notification_subscribers": [],

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
Attribution 4.0 International
1+
Attribution 4.0 International
22

33
=======================================================================
44

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
## Microsoft Open Source Code of Conduct
2+
3+
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
4+
For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [[email protected]](mailto:[email protected]) with any additional questions or comments.
5+
16
# Visual Studio 2017 documentation
27

38
Welcome! This repo contains source files for the work-in-progress Visual Studio 2017 technical documentation. The topics are published on the [Visual Studio documentation site](https://docs.microsoft.com/visualstudio).

ThirdPartyNotices

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
##Legal Notices
2+
Microsoft and any contributors grant you a license to the Microsoft documentation and other content
3+
in this repository under the [Creative Commons Attribution 4.0 International Public License](https://creativecommons.org/licenses/by/4.0/legalcode),
4+
see the [LICENSE](LICENSE) file, and grant you a license to any code in the repository under the [MIT License](https://opensource.org/licenses/MIT), see the
5+
[LICENSE-CODE](LICENSE-CODE) file.
6+
7+
Microsoft, Windows, Microsoft Azure and/or other Microsoft products and services referenced in the documentation
8+
may be either trademarks or registered trademarks of Microsoft in the United States and/or other countries.
9+
The licenses for this project do not grant you rights to use any Microsoft names, logos, or trademarks.
10+
Microsoft's general trademark guidelines can be found at http://go.microsoft.com/fwlink/?LinkID=254653.
11+
12+
Privacy information can be found at https://privacy.microsoft.com/en-us/
13+
14+
Microsoft and any contributors reserve all others rights, whether under their respective copyrights, patents,
15+
or trademarks, whether by implication, estoppel or otherwise.

docs/TOC.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# [Welcome to Visual Studio 2017!](welcome-to-visual-studio.md)
22
# [What's New](ide/whats-new-in-visual-studio.md)
33
# [Installation](install/TOC.md)
4-
# [Visual Studio IDE Feature Tour](ide/visual-studio-ide.md)
4+
# [Visual Studio IDE](ide/visual-studio-ide.md)
55
# [Visual Basic](/dotnet/articles/visual-basic)
66
# [Visual C#](/dotnet/articles/csharp)
77
# [Visual C++](/cpp/top/visual-cpp-in-visual-studio)
8-
# [JavaScript](javascript/javascript-in-visual-studio.md)
8+
# [JavaScript](/scripting/javascript)
99
# [Python](python/getting-started-with-python.md)
1010
# [Visual F#](/dotnet/articles/fsharp/)
1111
# [Data Access](data-tools/TOC.md)

docs/_breadcrumb/toc.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,14 +53,14 @@
5353
topicHref: /visualstudio/modeling/analyze-and-model-your-architecture
5454
- name: Debugging
5555
tocHref: /visualstudio/debugger/
56-
topicHref: /visualstudio/debugger/debugging-in-visual-studio
56+
topicHref: /visualstudio/debugger/index
5757
items:
5858
- name: DIA SDK
5959
tocHref: /visualstudio/debugger/debug-interface-access/
6060
topicHref: /visualstudio/debugger/debug-interface-access/debug-interface-access-sdk
6161
- name: Profiling
6262
tocHref: /visualstudio/profiling/
63-
topicHref: /visualstudio/profiling/profiling-tools
63+
topicHref: /visualstudio/profiling/index
6464
- name: Testing
6565
tocHref: /visualstudio/test/
6666
topicHref: /visualstudio/test/improve-code-quality

docs/code-quality/c6001.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,4 +68,4 @@ int f( bool b )
6868
```
6969

7070
## See Also
71-
[Compiler Warning (level 1 and level 4) C4700](/visual-cpp/error-messages/compiler-warnings/compiler-warning-level-1-and-level-4-c4700)
71+
[Compiler Warning (level 1 and level 4) C4700](/cpp/error-messages/compiler-warnings/compiler-warning-level-1-and-level-4-c4700)

docs/code-quality/c6011.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,12 @@ void f([Pre(Null=Yes)] char* pc)
8282
}
8383
```
8484

85-
The use of malloc and free have many pitfalls in terms of memory leaks and exceptions. To avoid these kinds of leaks and exception problems altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/visual-cpp/standard-library/shared-ptr-class), [unique_ptr](/visual-cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/visual-cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/visual-cpp/standard-library/cpp-standard-library-reference).
85+
The use of malloc and free have many pitfalls in terms of memory leaks and exceptions. To avoid these kinds of leaks and exception problems altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/cpp/standard-library/shared-ptr-class), [unique_ptr](/cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/cpp/standard-library/cpp-standard-library-reference).
8686

8787
## See Also
8888
[Annotation Overview](http://msdn.microsoft.com/en-us/2345380e-2eeb-4107-907f-6e8b809c2643)
8989
[Null](http://msdn.microsoft.com/en-us/632f3684-60a0-45be-aeb1-be1521e94d88)
90-
[NULL](/visual-cpp/c-runtime-library/null-crt)
91-
[Indirection and Address-of Operators](/visual-cpp/c-language/indirection-and-address-of-operators)
92-
[malloc](/visual-cpp/c-runtime-library/reference/malloc)
93-
[free](/visual-cpp/c-runtime-library/reference/free)
90+
[NULL](/cpp/c-runtime-library/null-crt)
91+
[Indirection and Address-of Operators](/cpp/c-language/indirection-and-address-of-operators)
92+
[malloc](/cpp/c-runtime-library/reference/malloc)
93+
[free](/cpp/c-runtime-library/reference/free)

docs/code-quality/c6014.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ int main( )
102102

103103
Note that Code Analysis will not recognize the actual implementation of a memory allocator (involving address arithmetic) and will not recognize that memory is allocated (although many wrappers will be recognized). In this case, the analyzer does not recognize that the memory was allocated and issues this warning. To suppress the false positive, use a `#pragma` directive on the line that precedes the opening brace `{` of the function body.
104104

105-
To avoid these kinds of potential leaks altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/visual-cpp/standard-library/shared-ptr-class), [unique_ptr](/visual-cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/visual-cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/visual-cpp/standard-library/cpp-standard-library-reference).
105+
To avoid these kinds of potential leaks altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/cpp/standard-library/shared-ptr-class), [unique_ptr](/cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/cpp/standard-library/cpp-standard-library-reference).
106106

107107
```cpp
108108
// cl.exe /analyze /EHsc /nologo /W4

docs/code-quality/c6031.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,6 @@ void test_f()
110110
```
111111

112112
## See Also
113-
[fopen_s, _wfopen_s](/visual-cpp/c-runtime-library/reference/fopen-s-wfopen-s)
113+
[fopen_s, _wfopen_s](/cpp/c-runtime-library/reference/fopen-s-wfopen-s)
114114
[Annotation Overview](http://msdn.microsoft.com/en-us/2345380e-2eeb-4107-907f-6e8b809c2643)
115115
[MustCheck](http://msdn.microsoft.com/en-us/13c66d75-f1af-4c51-8fbe-029a38af8db0)

docs/code-quality/c6053.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,4 +100,4 @@ size_t f( )
100100
## See Also
101101
[Annotation Overview](http://msdn.microsoft.com/en-us/2345380e-2eeb-4107-907f-6e8b809c2643)
102102
[NullTerminated](http://msdn.microsoft.com/en-us/86cbc668-e134-44fa-978e-9a0d57134056)
103-
[strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l](/visual-cpp/c-runtime-library/reference/strncpy-s-strncpy-s-l-wcsncpy-s-wcsncpy-s-l-mbsncpy-s-mbsncpy-s-l)
103+
[strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l](/cpp/c-runtime-library/reference/strncpy-s-strncpy-s-l-wcsncpy-s-wcsncpy-s-l-mbsncpy-s-mbsncpy-s-l)

docs/code-quality/c6059.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -98,5 +98,5 @@ void f( )
9898
```
9999

100100
## See Also
101-
[strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l](/visual-cpp/c-runtime-library/reference/strncpy-s-strncpy-s-l-wcsncpy-s-wcsncpy-s-l-mbsncpy-s-mbsncpy-s-l)
102-
[strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l](/visual-cpp/c-runtime-library/reference/strncat-s-strncat-s-l-wcsncat-s-wcsncat-s-l-mbsncat-s-mbsncat-s-l)
101+
[strncpy_s, _strncpy_s_l, wcsncpy_s, _wcsncpy_s_l, _mbsncpy_s, _mbsncpy_s_l](/cpp/c-runtime-library/reference/strncpy-s-strncpy-s-l-wcsncpy-s-wcsncpy-s-l-mbsncpy-s-mbsncpy-s-l)
102+
[strncat_s, _strncat_s_l, wcsncat_s, _wcsncat_s_l, _mbsncat_s, _mbsncat_s_l](/cpp/c-runtime-library/reference/strncat-s-strncat-s-l-wcsncat-s-wcsncat-s-l-mbsncat-s-mbsncat-s-l)

docs/code-quality/c6063.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,4 +73,4 @@ void f( )
7373
```
7474

7575
## See Also
76-
[sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l](/visual-cpp/c-runtime-library/reference/sprintf-s-sprintf-s-l-swprintf-s-swprintf-s-l)
76+
[sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l](/cpp/c-runtime-library/reference/sprintf-s-sprintf-s-l-swprintf-s-swprintf-s-l)

docs/code-quality/c6064.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,4 +78,4 @@ void f( )
7878
```
7979

8080
## See Also
81-
[sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l](/visual-cpp/c-runtime-library/reference/sprintf-s-sprintf-s-l-swprintf-s-swprintf-s-l)
81+
[sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l](/cpp/c-runtime-library/reference/sprintf-s-sprintf-s-l-swprintf-s-swprintf-s-l)

docs/code-quality/c6066.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,5 +102,5 @@ void g( int i )
102102
This warning is typically reported because an integer has been used for a `%p` format instead of a pointer. Using an integer in this instance is not portable to 64-bit computers.
103103

104104
## See Also
105-
[sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l](/visual-cpp/c-runtime-library/reference/sprintf-s-sprintf-s-l-swprintf-s-swprintf-s-l)
106-
[scanf_s, _scanf_s_l, wscanf_s, _wscanf_s_l](/visual-cpp/c-runtime-library/reference/scanf-s-scanf-s-l-wscanf-s-wscanf-s-l)
105+
[sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l](/cpp/c-runtime-library/reference/sprintf-s-sprintf-s-l-swprintf-s-swprintf-s-l)
106+
[scanf_s, _scanf_s_l, wscanf_s, _wscanf_s_l](/cpp/c-runtime-library/reference/scanf-s-scanf-s-l-wscanf-s-wscanf-s-l)

docs/code-quality/c6067.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,6 @@ void f_safe( )
114114
```
115115

116116
## See Also
117-
[sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l](/visual-cpp/c-runtime-library/reference/sprintf-s-sprintf-s-l-swprintf-s-swprintf-s-l)
118-
[printf, _printf_l, wprintf, _wprintf_l](/visual-cpp/c-runtime-library/reference/printf-printf-l-wprintf-wprintf-l)
119-
[scanf_s, _scanf_s_l, wscanf_s, _wscanf_s_l](/visual-cpp/c-runtime-library/reference/scanf-s-scanf-s-l-wscanf-s-wscanf-s-l)
117+
[sprintf_s, _sprintf_s_l, swprintf_s, _swprintf_s_l](/cpp/c-runtime-library/reference/sprintf-s-sprintf-s-l-swprintf-s-swprintf-s-l)
118+
[printf, _printf_l, wprintf, _wprintf_l](/cpp/c-runtime-library/reference/printf-printf-l-wprintf-wprintf-l)
119+
[scanf_s, _scanf_s_l, wscanf_s, _wscanf_s_l](/cpp/c-runtime-library/reference/scanf-s-scanf-s-l-wscanf-s-wscanf-s-l)

docs/code-quality/c6211.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ void f()
9595
9696
```
9797

98-
To avoid these kinds of potential leaks altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/visual-cpp/standard-library/shared-ptr-class), [unique_ptr](/visual-cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/visual-cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/visual-cpp/standard-library/cpp-standard-library-reference).
98+
To avoid these kinds of potential leaks altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/cpp/standard-library/shared-ptr-class), [unique_ptr](/cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/cpp/standard-library/cpp-standard-library-reference).
9999

100100
```cpp
101101
// cl.exe /analyze /c /EHsc /nologo /W4
@@ -132,4 +132,4 @@ void f( )
132132
```
133133

134134
## See Also
135-
[C++ Exception Handling](/visual-cpp/cpp/cpp-exception-handling)
135+
[C++ Exception Handling](/cpp/cpp/cpp-exception-handling)

docs/code-quality/c6214.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,4 +95,4 @@ BOOL f( )
9595

9696
[FAILED](http://go.microsoft.com/fwlink/?LinkId=92737)
9797

98-
To leverage modern C++ memory allocation methodology, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/visual-cpp/standard-library/shared-ptr-class), [unique_ptr](/visual-cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/visual-cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/visual-cpp/standard-library/cpp-standard-library-reference).
98+
To leverage modern C++ memory allocation methodology, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/cpp/standard-library/shared-ptr-class), [unique_ptr](/cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/cpp/standard-library/cpp-standard-library-reference).

docs/code-quality/c6219.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,4 +84,4 @@ void f( )
8484

8585
For this warning, the `SCODE` type is equivalent to `HRESULT`.
8686

87-
Note that the use of malloc and free (and related dynamic memory APIs) have many pitfalls in terms of memory leaks and exceptions. To avoid these kinds of leaks and exception problems altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/visual-cpp/standard-library/shared-ptr-class), [unique_ptr](/visual-cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/visual-cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/visual-cpp/standard-library/cpp-standard-library-reference).
87+
Note that the use of malloc and free (and related dynamic memory APIs) have many pitfalls in terms of memory leaks and exceptions. To avoid these kinds of leaks and exception problems altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/cpp/standard-library/shared-ptr-class), [unique_ptr](/cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/cpp/standard-library/cpp-standard-library-reference).

docs/code-quality/c6220.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,4 +92,4 @@ HRESULT f( )
9292

9393
For more information, see [SUCCEEDED Macro](http://go.microsoft.com/fwlink/?LinkId=92738) and [FAILED Macro](http://go.microsoft.com/fwlink/?LinkId=180875).
9494

95-
Note that the use of malloc and free (and related dynamic memory allocation APIs) have many pitfalls in terms of memory leaks and exceptions. To avoid these kinds of leaks and exception problems altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/visual-cpp/standard-library/shared-ptr-class), [unique_ptr](/visual-cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/visual-cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/visual-cpp/standard-library/cpp-standard-library-reference).
95+
Note that the use of malloc and free (and related dynamic memory allocation APIs) have many pitfalls in terms of memory leaks and exceptions. To avoid these kinds of leaks and exception problems altogether, use the mechanisms that are provided by the C++ Standard Template Library (STL). These include [shared_ptr](/cpp/standard-library/shared-ptr-class), [unique_ptr](/cpp/standard-library/unique-ptr-class), and [vector](http://msdn.microsoft.com/Library/c1431ad8-c0b6-4dbb-89c4-5f651e432d7f). For more information, see [Smart Pointers](/cpp/cpp/smart-pointers-modern-cpp) and [C++ Standard Library](/cpp/standard-library/cpp-standard-library-reference).

0 commit comments

Comments
 (0)