Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 53bed94

Browse files
committed
Improve code of getRequiredExtensions function
1 parent a8e79b2 commit 53bed94

27 files changed

Lines changed: 27 additions & 135 deletions

03_Drawing_a_triangle/00_Setup/02_Validation_layers.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -178,15 +178,11 @@ not:
178178

179179
```c++
180180
std::vector<const char*> getRequiredExtensions() {
181-
std::vector<const char*> extensions;
182-
183181
uint32_t glfwExtensionCount = 0;
184182
const char** glfwExtensions;
185183
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
186184

187-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
188-
extensions.push_back(glfwExtensions[i]);
189-
}
185+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
190186

191187
if (enableValidationLayers) {
192188
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/command_buffers.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -712,15 +712,11 @@ class HelloTriangleApplication {
712712
}
713713

714714
std::vector<const char*> getRequiredExtensions() {
715-
std::vector<const char*> extensions;
716-
717715
uint32_t glfwExtensionCount = 0;
718716
const char** glfwExtensions;
719717
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
720718

721-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
722-
extensions.push_back(glfwExtensions[i]);
723-
}
719+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
724720

725721
if (enableValidationLayers) {
726722
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/depth_buffering.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1450,15 +1450,11 @@ class HelloTriangleApplication {
14501450
}
14511451

14521452
std::vector<const char*> getRequiredExtensions() {
1453-
std::vector<const char*> extensions;
1454-
14551453
uint32_t glfwExtensionCount = 0;
14561454
const char** glfwExtensions;
14571455
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
14581456

1459-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
1460-
extensions.push_back(glfwExtensions[i]);
1461-
}
1457+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
14621458

14631459
if (enableValidationLayers) {
14641460
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/descriptor_layout.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1074,15 +1074,11 @@ class HelloTriangleApplication {
10741074
}
10751075

10761076
std::vector<const char*> getRequiredExtensions() {
1077-
std::vector<const char*> extensions;
1078-
10791077
uint32_t glfwExtensionCount = 0;
10801078
const char** glfwExtensions;
10811079
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
10821080

1083-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
1084-
extensions.push_back(glfwExtensions[i]);
1085-
}
1081+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
10861082

10871083
if (enableValidationLayers) {
10881084
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/descriptor_set.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1128,15 +1128,11 @@ class HelloTriangleApplication {
11281128
}
11291129

11301130
std::vector<const char*> getRequiredExtensions() {
1131-
std::vector<const char*> extensions;
1132-
11331131
uint32_t glfwExtensionCount = 0;
11341132
const char** glfwExtensions;
11351133
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
11361134

1137-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
1138-
extensions.push_back(glfwExtensions[i]);
1139-
}
1135+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
11401136

11411137
if (enableValidationLayers) {
11421138
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/fixed_functions.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -563,15 +563,11 @@ class HelloTriangleApplication {
563563
}
564564

565565
std::vector<const char*> getRequiredExtensions() {
566-
std::vector<const char*> extensions;
567-
568566
uint32_t glfwExtensionCount = 0;
569567
const char** glfwExtensions;
570568
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
571569

572-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
573-
extensions.push_back(glfwExtensions[i]);
574-
}
570+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
575571

576572
if (enableValidationLayers) {
577573
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/framebuffers.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -648,15 +648,11 @@ class HelloTriangleApplication {
648648
}
649649

650650
std::vector<const char*> getRequiredExtensions() {
651-
std::vector<const char*> extensions;
652-
653651
uint32_t glfwExtensionCount = 0;
654652
const char** glfwExtensions;
655653
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
656654

657-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
658-
extensions.push_back(glfwExtensions[i]);
659-
}
655+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
660656

661657
if (enableValidationLayers) {
662658
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/graphics_pipeline.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -455,15 +455,11 @@ class HelloTriangleApplication {
455455
}
456456

457457
std::vector<const char*> getRequiredExtensions() {
458-
std::vector<const char*> extensions;
459-
460458
uint32_t glfwExtensionCount = 0;
461459
const char** glfwExtensions;
462460
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
463461

464-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
465-
extensions.push_back(glfwExtensions[i]);
466-
}
462+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
467463

468464
if (enableValidationLayers) {
469465
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/graphics_pipeline_complete.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -619,15 +619,11 @@ class HelloTriangleApplication {
619619
}
620620

621621
std::vector<const char*> getRequiredExtensions() {
622-
std::vector<const char*> extensions;
623-
624622
uint32_t glfwExtensionCount = 0;
625623
const char** glfwExtensions;
626624
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
627625

628-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
629-
extensions.push_back(glfwExtensions[i]);
630-
}
626+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
631627

632628
if (enableValidationLayers) {
633629
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

code/hello_triangle.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -784,15 +784,11 @@ class HelloTriangleApplication {
784784
}
785785

786786
std::vector<const char*> getRequiredExtensions() {
787-
std::vector<const char*> extensions;
788-
789787
uint32_t glfwExtensionCount = 0;
790788
const char** glfwExtensions;
791789
glfwExtensions = glfwGetRequiredInstanceExtensions(&glfwExtensionCount);
792790

793-
for (uint32_t i = 0; i < glfwExtensionCount; i++) {
794-
extensions.push_back(glfwExtensions[i]);
795-
}
791+
std::vector<const char*> extensions(glfwExtensions, glfwExtensions + glfwExtensionCount);
796792

797793
if (enableValidationLayers) {
798794
extensions.push_back(VK_EXT_DEBUG_REPORT_EXTENSION_NAME);

0 commit comments

Comments
 (0)