Qt Programming Language
-
@JKSH said in Qt Programming Language:
@mrjj said in Qt Programming Language:
Hi
Im wondering about the file extension.
Its .cs which would indicate a c sharp program
and not a c++ one ?
Maybe a wrong template was used to create it ?@mrjj is right; you have created a C# project instead of a C++ project. When you create a project, select "Visual C++".
I can't remember what Visual Studio 2015 is like, but Visual Studio 2017 lets me choose Visual C++ > Windows Desktop > Windows Console Application.
Here's another screenshot. This time, I actually created a C++ project, but it still says there's an error.
-
@Annabelle
This is to do with the VS/MS compiler. Paste the following line:#include "stdafx.h"
into your file, as the first line, somewhere above your existing
#include <iostream>
.Alternatively you can remove a compiler switch (
/Yu
) in your VS project, but I think the above is easiest. -
@JonB said in Qt Programming Language:
@Annabelle
This is to do with the VS/MS compiler. Paste the following line:#include "stdafx.h"
into your file, as the first line, somewhere above your existing
#include <iostream>
.Alternatively you remover a compiler switch (
/Yu
) in your VS project, but I think the above is easiest.What exactly is "stdafx"? Is it an initializing parameter?
-
@Annabelle said in Qt Programming Language:
What exactly is "stdafx"? Is it an initializing parameter?
You can find an answer by searching on Google or another search engine. Programmers must use search engines often, so make it a habit.
Here is an answer: https://stackoverflow.com/questions/2976035/purpose-of-stdafx-h
-
@Annabelle
When you did the paste, this time you have accidentally actually copied the actual line numbers1
to6
onto lines 1 to 6. This is in addition to the line numbers which VS shows to the left of every line you write, and your screenreader probably reads out to you. Which means that prior to your#include
at line 7 the first 6 lines are unacceptable. You need to delete, or change to blank lines, your first 6 lines.When you try to compile code, the very first error is highly significant. Once the compiler hits something erroneous, very often it does not do a great a job at "recovering" from the error such that it gives sensible errors (or not) for whatever follows. So you can end up with loads of "spurious" errors after the first one. Concentrate each time on fixing whatever the very first error reported is, then try compiling again and see where it gets you.
Now, there is an important thing here in VS which I do not know whether you are aware of/your screenreader tells you about. When we look at the lines you have shown us in the screenshot above, we see the lines the compiler does not like having a "squiggly red underline" shown. For us we can immediately see those and know something is wrong. Does your screenreader tell you about these? In your current code, the very first line (numbered 1) has the actual text of the number
1
on it. Since that is wrong, VS squiggle-red-underlines that1
. It would be very helpful to you if your screenreader can make you aware of such lines, but perhaps it cannot? Also, I believe that if I hovered my mouse over a red-squiggle-underline VS would put up a "tooltip" giving me the error message for what is wrong: again, are you able to be informed about that? -
@JonB said in Qt Programming Language:
@Annabelle
When you did the paste, this time you have accidentally actually copied the actual line numbers1
to6
onto lines 1 to 6. This is in addition to the line numbers which VS shows to the left of every line you write, and your screenreader probably reads out to you. Which means that prior to your#include
at line 7 the first 6 lines are unacceptable. You need to delete, or change to blank lines, your first 6 lines.When you try to compile code, the very first error is highly significant. Once the compiler hits something erroneous, very often it does not do a great a job at "recovering" from the error such that it gives sensible errors (or not) for whatever follows. So you can end up with loads of "spurious" errors after the first one. Concentrate each time on fixing whatever the very first error reported is, then try compiling again and see where it gets you.
Now, there is an important thing here in VS which I do not know whether you are aware of/your screenreader tells you about. When we look at the lines you have shown us in the screenshot above, we see the lines the compiler does not like having a "squiggly red underline" shown. For us we can immediately see those and know something is wrong. Does your screenreader tell you about these? In your current code, the very first line (numbered 1) has the actual text of the number
1
on it. Since that is wrong, VS squiggle-red-underlines that1
. It would be very helpful to you if your screenreader can make you aware of such lines, but perhaps it cannot? Also, I believe that if I hovered my mouse over a red-squiggle-underline VS would put up a "tooltip" giving me the error message for what is wrong: again, are you able to be informed about that?My screenreader can't tell if an underline has a color or is squigly. It can say _ (underline). Is that the mark you're talking about? I'm confused!
-
@Annabelle said in Qt Programming Language:
My screenreader can't tell if an underline has a color or is squigly. It can say _ (underline). Is that the mark you're talking about?
In your latest screenshot, there was a red squiggly line underneath "#include". Did your screenreader announce that? If not, don't worry -- the error is repeated under the Error List pane: "cannot open source Hello World! file "stdafx.h". Did your screenreader announce that?
@Annabelle said in Qt Programming Language:
Here's a screenshot of yet another error.
Change
<stdafx.h>
to"stdafx.h"
. In other words, change the angular brackets to double quotation marks. -
@JKSH said in Qt Programming Language:
@Annabelle said in Qt Programming Language:
My screenreader can't tell if an underline has a color or is squigly. It can say _ (underline). Is that the mark you're talking about?
In your latest screenshot, there was a red squiggly line underneath "#include". Did your screenreader announce that? If not, don't worry -- the error is repeated under the Error List pane: "cannot open source Hello World! file "stdafx.h". Did your screenreader announce that?
@Annabelle said in Qt Programming Language:
Here's a screenshot of yet another error.
Change
<stdafx.h>
to"stdafx.h"
. In other words, change the angular brackets to double quotation marks.It seems that when I type #include "stdafx.h", the quotation marks, for some reason, are automatically changed to angular brackets (<>). How do I prevent that from happening?
-
@Annabelle
This looks fault-free, and seems to have run without error! I don't know where the "Hello world" output went though? On thatOutput
tab you have theShow output from
combobox set toDebug
, you may have to set that to something else to see/hear the program output? -
@JonB said in Qt Programming Language:
@Annabelle
This looks fault-free, and seems to have run without error! I don't know where the "Hello world" output went though? On thatOutput
tab you have theShow output from
combobox set toDebug
, you may have to set that to something else to see/hear the program output?How do I do that, I wonder? After I make the "Hello World" program, what do I do next?
-
@Annabelle
Ignore my comment about theDebug
tab, I think. The question is: when you run the program, it should outputHello world!
, where does that output go to? Does it maybe open a console window, send it there, and then close it as soon as your program finishes, all of which would be near "instantaneous"? It may depend on your project type, I don't know. You may need hep on this from VS C++ people here.... -
@Annabelle said in Qt Programming Language:
@JonB said in Qt Programming Language:
@Annabelle
I don't know where the "Hello world" output went though? On thatOutput
tab you have theShow output from
combobox set toDebug
, you may have to set that to something else to see/hear the program output?How do I do that, I wonder?
When you run your program (Ctrl + F5), a window should pop up and that window should contain the words "Hello world!". The window will close if you press any key while the window has focus.
Did JAWS read the contents of that window to you?
-
@JonB said in Qt Programming Language:
@Annabelle
Ignore my comment about theDebug
tab, I think. The question is: when you run the program, it should outputHello world!
, where does that output go to? Does it maybe open a console window, send it there, and then close it as soon as your program finishes, all of which would be near "instantaneous"? It may depend on your project type, I don't know. You may need hep on this from VS C++ people here....This is what the output window looks like in a screenshot.
What is the meaning of this message?
"The program '[2880] Hello World!.exe' has exited with code 0 (0x0)." -
"The program '[2880] Hello World!.exe' has exited with code 0 (0x0)."
It's just Visual Studio letting you know good news! It's telling you that you just ran your program executable (
Hello World!.exe
), it ran to completion and exited, and it returned an "exit code" of 0 (which is good, is what your code does, but which you don't care about).My question still remains, however. When that program ran it sent the string
Hello World!
to its "output" (that's the purpose of this program). Where did that "output" go? (I don't use Visual Studio, and with your project type, so I don't know. @JKSH said earlier:When you run your program (Ctrl + F5), a window should pop up and that window should contain the words "Hello world!". The window will close if you press any key while the window has focus.
Did JAWS read the contents of that window to you?So how does this behave for you? Did you get to hear about that output? Did you press a key to close a window which had opened?
-
@JonB said in Qt Programming Language:
"The program '[2880] Hello World!.exe' has exited with code 0 (0x0)."
It's just Visual Studio letting you know good news! It's telling you that you just ran your program executable (
Hello World!.exe
), it ran to completion and exited, and it returned an "exit code" of 0 (which is good, is what your code does, but which you don't care about).My question still remains, however. When that program ran it sent the string
Hello World!
to its "output" (that's the purpose of this program). Where did that "output" go? (I don't use Visual Studio, and with your project type, so I don't know. @JKSH said earlier:When you run your program (Ctrl + F5), a window should pop up and that window should contain the words "Hello world!". The window will close if you press any key while the window has focus.
Did JAWS read the contents of that window to you?So how does this behave for you? Did you get to hear about that output? Did you press a key to close a window which had opened?
@JonB said in Qt Programming Language:
"The program '[2880] Hello World!.exe' has exited with code 0 (0x0)."
It's just Visual Studio letting you know good news! It's telling you that you just ran your program executable (
Hello World!.exe
), it ran to completion and exited, and it returned an "exit code" of 0 (which is good, is what your code does, but which you don't care about).My question still remains, however. When that program ran it sent the string
Hello World!
to its "output" (that's the purpose of this program). Where did that "output" go? (I don't use Visual Studio, and with your project type, so I don't know. @JKSH said earlier:When you run your program (Ctrl + F5), a window should pop up and that window should contain the words "Hello world!". The window will close if you press any key while the window has focus.
Did JAWS read the contents of that window to you?So how does this behave for you? Did you get to hear about that output? Did you press a key to close a window which had opened?
@JonB said in Qt Programming Language:
"The program '[2880] Hello World!.exe' has exited with code 0 (0x0)."
It's just Visual Studio letting you know good news! It's telling you that you just ran your program executable (
Hello World!.exe
), it ran to completion and exited, and it returned an "exit code" of 0 (which is good, is what your code does, but which you don't care about).My question still remains, however. When that program ran it sent the string
Hello World!
to its "output" (that's the purpose of this program). Where did that "output" go? (I don't use Visual Studio, and with your project type, so I don't know. @JKSH said earlier:When you run your program (Ctrl + F5), a window should pop up and that window should contain the words "Hello world!". The window will close if you press any key while the window has focus.
Did JAWS read the contents of that window to you?So how does this behave for you? Did you get to hear about that output? Did you press a key to close a window which had opened?
I didn't hear about the output. When I pressed the shortcut to run the program, it first asked me if I wanted to build it, and I said "Yes". Then it launched the Command Prompt. What's up with that, I wonder?
-
@JonB said in Qt Programming Language:
@Annabelle
You wrote:Then it launched the Command Prompt.
It is probably in that Command Prompt window that I would expect the text of
Hello World!
to have been output. Is that possible?JAWS doesn't show anything in the Command Prompt. If the text was shown, I'd be able to read it with the left and right arrow keys.