{"id":106664,"date":"2020-03-02T13:18:13","date_gmt":"2020-03-02T13:18:13","guid":{"rendered":"https:\/\/www.softwaretestinghelp.com\/?page_id=106664"},"modified":"2025-04-01T08:13:59","modified_gmt":"2025-04-01T08:13:59","slug":"cpp-errors","status":"publish","type":"page","link":"https:\/\/www.softwaretestinghelp.com\/cpp-errors\/","title":{"rendered":"C++ Errors: Undefined Reference, Unresolved External Symbol etc."},"content":{"rendered":"<p><strong>This Tutorial Details the Critical Errors that Programmers often Encounter in C++like Undefined Reference, a Segmentation Fault (core dumped) and Unresolved External Symbol:<\/strong><\/p>\n<p>We will discuss the most important errors that we often encounter in C++ that are equally critical indeed. Apart from the system and semantic errors and exceptions that occur from time to time, we also get other critical errors that affect the running of programs.<\/p>\n<p>These errors mostly occur towards the end of the program at runtime. Sometimes the program gives proper output and then the error occurs.<\/p>\n<p><strong>=&gt; <a href=\"https:\/\/www.softwaretestinghelp.com\/cpp-tutorials\/\">Visit Here To Learn C++ From Scratch.<\/a><\/strong><\/p>\n<p><em><strong> <\/strong><\/em><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/C-Errors.png\"><img decoding=\"async\" class=\"alignnone wp-image-106749 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/C-Errors.png\" alt=\"C++ Errors Undefined Reference\" width=\"650\" height=\"366\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/C-Errors.png 650w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/C-Errors-300x169.png 300w\" sizes=\"(max-width: 650px) 100vw, 650px\" \/><\/a><\/p>\n<h2>Important C++ Errors<\/h2>\n<p><strong>In this tutorial, we will discuss three types of errors that are critical from any C++ programmer\u2019s point of view.<\/strong><\/p>\n<ul>\n<li>Undefined reference<\/li>\n<li>Segmentation fault (core dumped)<\/li>\n<li>Unresolved external symbol<\/li>\n<\/ul>\n<p>We will discuss the possible causes of each of these errors and along with the precautions that we can take as a programmer to prevent these errors.<\/p>\n<p><em><strong>Let&#8217;s start!!<\/strong><\/em><\/p>\n<h3><span style=\"color: #ff6600;\">Undefined Reference<\/span><\/h3>\n<p>An \u201cUndefined Reference\u201d error occurs when we have a reference to object name (class, function, variable, etc.) in our program and the linker cannot find its definition when it tries to search for it in all the linked object files and libraries.<\/p>\n<p>Thus when the linker cannot find the definition of a linked object, it issues an \u201cundefined reference\u201d error. As clear from definition, this error occurs in the later stages of the linking process. There are various reasons that cause an \u201cundefined reference\u201d error.<\/p>\n<p><strong>We discuss some of these reasons below:<\/strong><\/p>\n<p><span style=\"color: #000000;\"><strong>#1) No Definition Provided For Object<\/strong><\/span><\/p>\n<p>This is the simplest reason for causing an \u201cundefined reference\u201d error. The programmer has simply forgotten to define the object.<\/p>\n<p>Consider the following C++ program. Here we have only specified the prototype of function and then used it in the main function.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt;\r\nint func1();\r\nint main()\r\n{\r\n    \r\n    func1();\r\n}<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/7-No-definition-provided-for-object.png\"><img decoding=\"async\" class=\"alignnone wp-image-106719 size-full\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/7-No-definition-provided-for-object.png\" alt=\"No definition provided for object - Output\" width=\"439\" height=\"81\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/7-No-definition-provided-for-object.png 439w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/7-No-definition-provided-for-object-300x55.png 300w\" sizes=\"(max-width: 439px) 100vw, 439px\" \/><\/a><\/p>\n<p>So when we compile this program, the linker error that says \u201cundefined reference to \u2018func1()\u2019\u201d is issued.<\/p>\n<p>In order to get rid of this error, we correct the program as follows by providing the definition of the function func1. Now the program gives the appropriate output.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt;\r\nusing namespace std;\r\nint func1();\r\n\r\nint main()\r\n{\r\n    \r\n    func1();\r\n}\r\nint func1(){\r\n    cout&lt;&lt;&quot;hello, world!!&quot;;\r\n}<\/pre>\n<p><strong> Output:<\/strong><\/p>\n<p>hello,\u00a0world!!<\/p>\n<p><span style=\"color: #000000;\"><strong>#2) Wrong Definition (signatures don\u2019t match) Of Objects Used<\/strong><\/span><\/p>\n<p>Yet another cause for \u201cundefined reference\u201d error is when we specify wrong definitions. We use any object in our program and its definition is something different.<\/p>\n<p>Consider the following C++ program. Here we have made a call to func1 (). Its prototype is int func1 (). But its definition does not match with its prototype. As we see, the definition of the function contains a parameter to the function.<\/p>\n<p>Thus when the program is compiled, the compilation is successful because of the prototype and function call match. But when the linker is trying to link the function call with its definition, it finds the problem and issues the error as \u201cundefined reference\u201d.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt;\r\nusing namespace std;\r\nint func1();\r\nint main()\r\n{\r\n    \r\n    func1();\r\n}\r\nint func1(int n){\r\n    cout&lt;&lt;&quot;hello, world!!&quot;;\r\n}<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/6-Wrong-definitionsignatures-don\u2019t-match-of-objects-used.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-106718\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/6-Wrong-definitionsignatures-don\u2019t-match-of-objects-used.png\" alt=\"Wrong definition(signatures don\u2019t match) of objects used\" width=\"451\" height=\"87\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/6-Wrong-definitionsignatures-don\u2019t-match-of-objects-used.png 451w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/6-Wrong-definitionsignatures-don\u2019t-match-of-objects-used-300x58.png 300w\" sizes=\"(max-width: 451px) 100vw, 451px\" \/><\/a><\/p>\n<p>Thus to prevent such errors, we simply cross-check if the definitions and usage of all the objects are matching in our program.<\/p>\n<p><span style=\"color: #000000;\"><strong>#3) Object Files Not Linked Properly<\/strong><\/span><\/p>\n<p>This issue can also give rise to the \u201cundefined reference\u201d error. Here, we may have more than one source files and we might compile them independently. When this is done, the objects are not linked properly and it results in \u201cundefined reference\u201d.<\/p>\n<p>Consider the following two C++ programs. In the first file, we make use of the \u201cprint ()\u201d function which is defined in the second file. When we compile these files separately, the first file gives \u201cundefined reference\u201d for the print function, while the second file gives \u201cundefined reference\u201d for the main function.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">int print();\r\nint main()\r\n{\r\n    print();\r\n}<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/5-undefined-reference\u201d-for-print-function.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-106717\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/5-undefined-reference\u201d-for-print-function.png\" alt=\" undefined reference\u201d for print function\" width=\"450\" height=\"82\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/5-undefined-reference\u201d-for-print-function.png 450w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/5-undefined-reference\u201d-for-print-function-300x55.png 300w\" sizes=\"(max-width: 450px) 100vw, 450px\" \/><\/a><\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">int print() {\r\n    return 42;\r\n}<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/4-undefined-reference-for-main-function..png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-106716\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/4-undefined-reference-for-main-function..png\" alt=\"undefined reference for main function.\" width=\"420\" height=\"56\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/4-undefined-reference-for-main-function..png 420w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/4-undefined-reference-for-main-function.-300x40.png 300w\" sizes=\"(max-width: 420px) 100vw, 420px\" \/><\/a><\/p>\n<p>The way to resolve this error is to compile both the files simultaneously (<span style=\"text-decoration: underline;\"><strong>For example,<\/strong><\/span> by using g++).<\/p>\n<p>Apart from the causes already discussed, \u201cundefined reference\u201d may also occur because of the following reasons.<\/p>\n<p><span style=\"color: #000000;\"><strong>#4) Wrong Project Type<\/strong><\/span><\/p>\n<p>When we specify wrong project types in C++ IDEs like the visual studio and try to do things that the project does not expect, then, we get \u201cundefined reference\u201d.<\/p>\n<p><span style=\"color: #000000;\"><strong>#5) No Library<\/strong><\/span><\/p>\n<p>If a programmer has not specified the library path properly or completely forgotten to specify it, then we get an \u201cundefined reference\u201d for all the references the program uses from the library.<\/p>\n<p><span style=\"color: #000000;\"><strong>#6) Dependent Files Are Not Compiled<\/strong><\/span><\/p>\n<p>A programmer has to ensure that we compile all the dependencies of the project beforehand so that when we compile the project, the compiler finds all the dependencies and compiles successfully. If any of the dependencies are missing then the compiler gives \u201cundefined reference\u201d.<\/p>\n<p>Apart from the causes discussed above, the \u201cundefined reference\u201d error can occur in many other situations. But the bottom line is that the programmer has got the things wrong and in order to prevent this error they should be corrected.<\/p>\n<h3><span style=\"color: #ff6600;\">Segmentation Fault (core dumped)<\/span><\/h3>\n<p>The error \u201csegmentation fault (core dumped)\u201d is an error that indicates memory corruption. It usually occurs when we try to access a memory that does not belong to the program into consideration.<\/p>\n<p><strong>Here are some of the reasons that cause Segmentation fault error.<\/strong><\/p>\n<p><span style=\"color: #000000;\"><strong>#1) Modifying The Constant String<\/strong><\/span><\/p>\n<p>Consider the following program wherein we have declared a constant string. Then we try to modify this constant string. When the program is executed, we get the error shown in the output.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt;\r\nint main() \r\n{ \r\n   char *str;  \r\n  \r\n  \/\/constant string\r\n   str = &quot;STH&quot;;      \r\n  \r\n   \/\/modifying constant string\r\n   *(str+1) = 'c';  \r\n   return 0; \r\n}\r\n<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/3.-Modifying-constant-string.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-106715\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/3.-Modifying-constant-string.png\" alt=\"Modifying constant string\" width=\"561\" height=\"55\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/3.-Modifying-constant-string.png 561w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/3.-Modifying-constant-string-300x29.png 300w\" sizes=\"(max-width: 561px) 100vw, 561px\" \/><\/a><\/p>\n<p><span style=\"color: #000000;\"><strong>#2) Dereferencing Pointer<\/strong><\/span><\/p>\n<p>A pointer must point to a valid memory location before we dereference it. In the below program, we see that the pointer is pointing to NULL which means the memory location it&#8217;s pointing to is 0 i.e. invalid.<\/p>\n<p>Hence when we dereference it in the next line, we are actually trying to access its unknown memory location. This indeed results in a segmentation fault.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt; \r\nusing namespace std; \r\n  \r\nint main() \r\n{ \r\n    int* ptr = NULL; \r\n  \r\n   \/\/here we are accessing unknown memory location\r\n    *ptr = 1; \r\n   \r\n    cout &lt;&lt; *ptr; \r\n    return 0; \r\n}\r\n<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p>Segmentation\u00a0fault<\/p>\n<p>The next program shows a similar case. In this program also, the pointer is not pointing to valid data. An uninitialized pointer is as good as NULL and hence it also points to unknown memory location. Thus when we try to dereference it, it results in a segmentation fault.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt; \r\nusing namespace std;\r\nint main()  \r\n{ \r\n   int *p; \r\n   cout&lt;&lt;*p; \r\n   return 0; \r\n}\r\n<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p>Segmentation\u00a0fault<\/p>\n<p>In order to prevent such errors, we have to ensure that our pointer variables in the program point to valid memory locations always.<\/p>\n<p><span style=\"color: #000000;\"><strong>#3) Stack Overflow<\/strong><\/span><\/p>\n<p>When we have recursive calls in our program, they eat up all the memory in the stack and cause the stack to overflow. In such cases, we get the segmentation fault as running out of stack memory is also a kind of memory corruption.<\/p>\n<p>Consider the below program where we calculate the factorial of a number recursively. Note that our base condition tests if the number is 0 and then returns 1. This program works perfectly for positive numbers.<\/p>\n<p>But what happens when we actually pass a negative number to a factorial function? Well, as the base condition is not given for the negative numbers, the function does not know where to stop and thus results in a stack overflow.<\/p>\n<p>This is shown in the output below that gives segmentation fault.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt;\r\nusing namespace std;\r\nint factorial(int n)\r\n{\r\n    if(n == 0)\r\n    {\r\n        return 1;\r\n    }\r\n    return factorial(n-1) * n;\r\n}\r\nint main()\r\n{\r\n    cout&lt;&lt;factorial(-1);\r\n}\r\n<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p>Segmentation\u00a0fault\u00a0(core\u00a0dumped)<\/p>\n<p>Now in order to fix this error, we slightly change the base condition and also specify the case for negative numbers as shown below.<\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt;\r\nusing namespace std;\r\nint factorial(int n)\r\n{\r\n    \/\/ What about n &lt; 0?\r\n    if(n &lt;= 0)\r\n    {\r\n        return 1;\r\n    }\r\n    return factorial(n-1) * n;\r\n}\r\nint main()\r\n{\r\n    cout&lt;&lt;&quot;Factorial output:&quot;&lt;&lt;factorial(-1);\r\n}<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p>Factorial\u00a0output:1<\/p>\n<p><strong>Now we see that the segmentation fault is taken care of and the program works fine.<\/strong><\/p>\n<h3><span style=\"color: #ff6600;\">Unresolved External Symbol<\/span><\/h3>\n<p>The unresolved external symbol is a linker error that indicates it cannot find the symbol or its reference during the linking process. The error is similar to \u201cundefined reference\u201d and is issued interchangeably.<\/p>\n<p><strong>We have given two instances below where this error can occur.<\/strong><\/p>\n<p><span style=\"color: #000000;\"><strong>#1) When we refer a structure variable in the program that contains a static member.<\/strong><\/span><\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt;\r\nstruct C {\r\n   static int s;\r\n};\r\n\/\/ int C::s; \/\/ Uncomment the following line to fix the error.\r\nint main() {\r\n   C c;\r\n   C::s = 1;\r\n}<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/2.a-structure-variable-in-the-program.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-106714\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/2.a-structure-variable-in-the-program.png\" alt=\"a structure variable in the program\" width=\"444\" height=\"81\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/2.a-structure-variable-in-the-program.png 444w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/2.a-structure-variable-in-the-program-300x55.png 300w\" sizes=\"(max-width: 444px) 100vw, 444px\" \/><\/a><\/p>\n<p>In the above program, structure C has a static member s that is not accessible to the outside programs. So when we try to assign it a value in the main function, the linker doesn\u2019t find the symbol and may result in an \u201cunresolved external symbol\u201d or \u201cundefined reference\u201d.<\/p>\n<p>The way to fix this error is to explicitly scope the variable using \u2018::\u2019 outside the main before using it.<\/p>\n<p><span style=\"color: #000000;\"><strong>#2) When we have external variables referenced in the source file, and we have not linked the files that define these external variables.<\/strong><\/span><\/p>\n<p><strong>This case is demonstrated below:<\/strong><\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">#include &lt;iostream&gt;\r\n#include &lt;string&gt;\r\nusing namespace std;\r\nextern int i;\r\nextern void g();\r\nvoid f() {\r\n   i++;\r\n   g();\r\n}\r\nint main() {}\r\n<\/pre>\n<p><strong>Output:<\/strong><\/p>\n<p><a href=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/1-external-variables-referenced-in-the-source-file.png\"><img decoding=\"async\" class=\"alignnone size-full wp-image-106713\" src=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/1-external-variables-referenced-in-the-source-file.png\" alt=\"external variables referenced in the source file\" width=\"425\" height=\"137\" srcset=\"https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/1-external-variables-referenced-in-the-source-file.png 425w, https:\/\/www.softwaretestinghelp.com\/wp-content\/qa\/uploads\/2019\/10\/1-external-variables-referenced-in-the-source-file-300x97.png 300w\" sizes=\"(max-width: 425px) 100vw, 425px\" \/><\/a><\/p>\n<p>In general, in case of an \u201cunresolved external symbol\u201d, the compiled code for any object like function fails to find a symbol to which it makes a reference to, maybe because that symbol is not defined in the object files or any of the libraries specified to the linker.<\/p>\n<h2>Conclusion<\/h2>\n<p>In this tutorial, we discussed some major errors in C++ that are critical and can affect the program flow and might even result in an application crash. We explored all about Segmentation fault, Unresolved external symbol, and Undefined reference in detail.<\/p>\n<p>Although these errors can occur anytime, from the causes that we discussed we know that we can easily prevent them by carefully developing our program.<\/p>\n<p><strong>=&gt;<a href=\"https:\/\/www.softwaretestinghelp.com\/cpp-tutorials\/\"> Read Through The Easy C++ Training Series.<\/a><\/strong><\/p>\n\r\n\t\t\t<div id=\"daexthefup-container\"\r\n\t\t\t\tclass=\"daexthefup-container daexthefup-layout-stacked daexthefup-alignment-center\"\r\n\t\t\t\tdata-post-id=\"106664\">\r\n\r\n\t\t\t\t<div class=\"daexthefup-feedback\">\r\n\t\t\t\t\t<div class=\"daexthefup-text\">\r\n\t\t\t\t\t\t<h3 class=\"daexthefup-title\">Was this helpful?<\/h3>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<div class=\"daexthefup-buttons-container\">\r\n\t\t\t\t\t\t<div class=\"daexthefup-buttons\">\r\n\t\t\t\t\t\t\t\r\n\t\t\t<div class=\"daexthefup-yes daexthefup-button daexthefup-button-type-icon\" data-value=\"1\">\r\n\t\t\t\t\r\n                <svg>\r\n                    <defs>\r\n                        <style>.thumb-up-cls-1{fill:#c9c9c9;}.thumb-up-cls-2{fill:#e1e1e1;}.thumb-up-cls-3{fill:#676767;}<\/style>\r\n                    <\/defs>\r\n                    <g id=\"thumb_up\">\r\n                        <path class=\"thumb-up-cls-2 daexthefup-icon-circle\" d=\"m24,3c11.58,0,21,9.42,21,21s-9.42,21-21,21S3,35.58,3,24,12.42,3,24,3m0-1C11.85,2,2,11.85,2,24s9.85,22,22,22,22-9.85,22-22S36.15,2,24,2h0Z\" \/>\r\n                        <g>\r\n                            <rect class=\"thumb-up-cls-3 daexthefup-icon-secondary-color\" x=\"10\" y=\"20\" width=\"6\" height=\"15\" rx=\"1.5\" ry=\"1.5\" \/>\r\n                            <path class=\"thumb-up-cls-1 daexthefup-icon-primary-color\" d=\"m30.57,9.06l-.49-.1c-.81-.17-1.61.35-1.78,1.16l-5.3,11.74c-.17.81,3.16,1.61,3.97,1.78l1.96.41c.81.17,1.61-.35,1.78-1.16l2.18-10.27c.34-1.61-.7-3.21-2.31-3.56Z\" \/>\r\n                            <path class=\"thumb-up-cls-1 daexthefup-icon-primary-color\" d=\"m38.17,20h-18.67c-.83,0-1.5.67-1.5,1.5v12c0,.83.67,1.5,1.5,1.5h16.27c.71,0,1.33-.5,1.47-1.21l2.4-12c.19-.93-.53-1.8-1.47-1.8Z\" \/>\r\n                        <\/g>\r\n                    <\/g>\r\n                <\/svg>\t\t\t<\/div>\r\n\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t<div class=\"daexthefup-no daexthefup-button daexthefup-button-type-icon\" data-value=\"0\">\r\n\t\t\t\t\r\n                <svg>\r\n                    <defs>\r\n                        <style>.thumb-down-cls-1{fill:#c9c9c9;}.thumb-down-cls-2{fill:#e1e1e1;}.thumb-down-cls-3{fill:#676767;}<\/style>\r\n                    <\/defs>\r\n                    <g id=\"thumb_down\">\r\n                        <path class=\"thumb-down-cls-2 daexthefup-icon-circle\" d=\"m24,3c11.58,0,21,9.42,21,21s-9.42,21-21,21S3,35.58,3,24,12.42,3,24,3m0-1C11.85,2,2,11.85,2,24s9.85,22,22,22,22-9.85,22-22S36.15,2,24,2h0Z\" \/>\r\n                        <g>\r\n                            <rect class=\"thumb-down-cls-3 daexthefup-icon-secondary-color\" x=\"10\" y=\"13\" width=\"6\" height=\"15\" rx=\"1.5\" ry=\"1.5\" \/>\r\n                            <path class=\"thumb-down-cls-1 daexthefup-icon-primary-color\" d=\"m30.57,38.94l-.49.1c-.81.17-1.61-.35-1.78-1.16l-5.3-11.74c-.17-.81,3.16-1.61,3.97-1.78l1.96-.41c.81-.17,1.61.35,1.78,1.16l2.18,10.27c.34,1.61-.7,3.21-2.31,3.56Z\" \/>\r\n                            <path class=\"thumb-down-cls-1 daexthefup-icon-primary-color\" d=\"m38.17,28h-18.67c-.83,0-1.5-.67-1.5-1.5v-12c0-.83.67-1.5,1.5-1.5h16.27c.71,0,1.33.5,1.47,1.21l2.4,12c.19.93-.53,1.8-1.47,1.8Z\" \/>\r\n                        <\/g>\r\n                    <\/g>\r\n                <\/svg>\t\t\t<\/div>\r\n\r\n\t\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t<\/div>\r\n\r\n\t\t\t\t<div class=\"daexthefup-comment\">\r\n\t\t\t\t\t<div class=\"daexthefup-comment-top-container\">\r\n\t\t\t\t\t\t<label id=\"daexthefup-comment-label\" class=\"daexthefup-comment-label\"><\/label>\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"daexthefup-comment-character-counter-container\">\r\n\t\t\t\t\t\t\t\t<div id=\"daexthefup-comment-character-counter-number\"\r\n\t\t\t\t\t\t\t\t\tclass=\"daexthefup-comment-character-counter-number\"><\/div>\r\n\t\t\t\t\t\t\t\t<div class=\"daexthefup-comment-character-counter-text\"><\/div>\r\n\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\r\n\t\t\t\t\t<textarea id=\"daexthefup-comment-textarea\" class=\"daexthefup-comment-textarea\"\r\n\t\t\t\t\t\t\t\tplaceholder=\"Type your message\"\r\n\t\t\t\t\t\t\t\tmaxlength=\"\r\n\t\t\t\t\t\t\t\t400\t\t\t\t\t\t\t\t\t\"><\/textarea>\r\n\t\t\t\t\t<div class=\"daexthefup-comment-buttons-container\">\r\n\t\t\t\t\t\t<button class=\"daexthefup-comment-submit daexthefup-button\">Submit<\/button>\r\n\t\t\t\t\t\t<button class=\"daexthefup-comment-cancel daexthefup-button\">Cancel<\/button>\r\n\t\t\t\t\t<\/div>\r\n\t\t\t\t<\/div>\r\n\r\n\t\t\t\t<div class=\"daexthefup-successful-submission-text\">Thanks for your feedback!<\/div>\r\n\r\n\t\t\t<\/div>\r\n\r\n\t\t\t","protected":false},"excerpt":{"rendered":"<p>This Tutorial Details the Critical Errors that Programmers often Encounter in C++like Undefined Reference, a Segmentation Fault (core dumped) and Unresolved External Symbol: We will discuss the most important errors that we often encounter in C++ that are equally critical indeed. Apart from the system and semantic errors and exceptions &#8230; <\/p>\n<p class=\"read-more-container\"><a title=\"C++ Errors: Undefined Reference, Unresolved External Symbol etc.\" class=\"read-more button\" href=\"https:\/\/www.softwaretestinghelp.com\/cpp-errors\/#more-106664\" aria-label=\"Read more about C++ Errors: Undefined Reference, Unresolved External Symbol etc.\">Read more<\/a><\/p>\n","protected":false},"author":9,"featured_media":106749,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_helpful_pro_status":1,"footnotes":""},"categories":[403],"tags":[],"class_list":{"0":"post-106664","1":"page","2":"type-page","3":"status-publish","4":"has-post-thumbnail","6":"category-cpp"},"acf":[],"_links":{"self":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/pages\/106664","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/comments?post=106664"}],"version-history":[{"count":0,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/pages\/106664\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/media\/106749"}],"wp:attachment":[{"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/media?parent=106664"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/categories?post=106664"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.softwaretestinghelp.com\/wp-json\/wp\/v2\/tags?post=106664"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}