C++ VisualStudio中的空项目和非空项目有什么区别?

C++ VisualStudio中的空项目和非空项目有什么区别?,c++,winapi,visual-c++,operating-system,C++,Winapi,Visual C++,Operating System,我想知道VisualStudio中的empty和not empty(添加了stdafx文件)项目之间的区别是什么。stdafx.cpp/h文件中有什么内容 为什么在该文件中定义了_tmain()而不是main() 在旧书中我发现这样的代码` int WINAPI _tWinMain(HINSTANCE hinstExe, HINSTANCE, PTSTR pszCmdLine, int), 我应该在哪里编写代码来强制它工作 (抱歉英语不好)一个问题有很多问题 1.)空项目和非空项目之间没有真正

我想知道VisualStudio中的empty和not empty(添加了stdafx文件)项目之间的区别是什么。stdafx.cpp/h文件中有什么内容

为什么在该文件中定义了_tmain()而不是main()

在旧书中我发现这样的代码`

int WINAPI _tWinMain(HINSTANCE hinstExe, HINSTANCE, PTSTR pszCmdLine, int),
我应该在哪里编写代码来强制它工作


(抱歉英语不好)一个问题有很多问题

1.)空项目和非空项目之间没有真正的区别。据我所知,预编译头在空项目中是关闭的。 2.)微软在标准中使用stdafx.h。它还充当预编译头的单个包含。如果使用预编译头,则必须包含stdafx.h。我在这里解释的细节如下:

3.)默认情况下,Microsoft使用UNICODE字符串,它们使用16位而不是8位。字符始终为8位,因此microsoft为此定义了宏。如果使用_UNICODE编译宏(请参见设置页面),则宏将

#define THCAR short
有了“多个字节”,它是

main和_tmain也是如此

这不是旧书,而是不同的项目

_tWinMain
是基于窗口的应用程序(如您正在使用的浏览器)的入口点

_tmain

是控制台应用程序的入口点。

一个问题有很多问题

1.)空项目和非空项目之间没有真正的区别。据我所知,预编译头在空项目中是关闭的。 2.)微软在标准中使用stdafx.h。它还充当预编译头的单个包含。如果使用预编译头,则必须包含stdafx.h。我在这里解释的细节如下:

3.)默认情况下,Microsoft使用UNICODE字符串,它们使用16位而不是8位。字符始终为8位,因此microsoft为此定义了宏。如果使用_UNICODE编译宏(请参见设置页面),则宏将

#define THCAR short
有了“多个字节”,它是

main和_tmain也是如此

这不是旧书,而是不同的项目

_tWinMain
是基于窗口的应用程序(如您正在使用的浏览器)的入口点

_tmain
是控制台应用程序的入口点

  • 空项目中没有自动写入的源文件或头文件。其他“非空”项目会自动为您生成一些框架代码——试试看您得到了什么
  • stdafx
    文件已预编译-详细信息
  • \u t
    前缀映射到您正在使用的字符编码类型。它是微软的一个扩展。请参见,它基本上在unicode的
    wmain
    main
    之间切换
  • 空项目中没有自动写入的源文件或头文件。其他“非空”项目会自动为您生成一些框架代码——试试看您得到了什么
  • stdafx
    文件已预编译-详细信息
  • \u t
    前缀映射到您正在使用的字符编码类型。它是微软的一个扩展。请参见,它基本上在unicode的
    wmain
    main
    之间切换

  • 这是三个问题,一次只问一个。试一下每种项目类型,看看它能带来什么。考虑一本更新的书,或者坚持使用控制台应用程序。这是三个问题,一次只问一个。尝试每一个项目类型,看看它做了什么。考虑一本更新的书,或者坚持使用控制台应用程序,4加1。我在所有其他问题中都没有看到这一点。4分+1。我在所有其他问题中都没有看到这一点。+1表示更好的链接:-)+1表示更好的链接:-)