“Console ::”不编译

时间:2013-07-25 12:27:53

标签: c++ msdn windows-console

此代码取自http://msdn.microsoft.com/en-us/library/system.console.windowwidth.aspx 我想用gcc编译器编译它。

#include<cstdio>
#include<string>
#include<windows.h>
#include<iostream>
using namespace System;
int main()
{
   int origWidth;
   int width;
   int origHeight;
   int height;
   String^ m1 = "The current window width is {0}, and the " 
   "current window height is {1}.";
   String^ m2 = "The new window width is {0}, and the new " 
   "window height is {1}.";
   String^ m4 = "  (Press any key to continue...)";

    // 
   // Step 1: Get the current window dimensions. 
   //
   origWidth = Console::WindowWidth;
   origHeight = Console::WindowHeight;
   Console::WriteLine( m1, Console::WindowWidth, Console::WindowHeight );
   Console::WriteLine( m4 );
   Console::ReadKey( true );

   // 
   // Step 2: Cut the window to 1/4 its original size. 
   //
   width = origWidth / 2;
   height = origHeight / 2;
   Console::SetWindowSize( width, height );
   Console::WriteLine( m2, Console::WindowWidth, Console::WindowHeight );
   Console::WriteLine( m4 );
   Console::ReadKey( true );

   // 
   // Step 3: Restore the window to its original size. 
   //
   Console::SetWindowSize( origWidth, origHeight );
   Console::WriteLine( m1, Console::WindowWidth, Console::WindowHeight );
}

但它显示错误。

错误是

F:\Untitled2.cpp||In function 'int main()':|
F:\Untitled2.cpp|31|error: 'Console' has not been declared|
F:\Untitled2.cpp|32|error: 'Console' has not been declared|
F:\Untitled2.cpp|33|error: 'Console' has not been declared|
F:\Untitled2.cpp|34|error: 'Console' has not been declared|
F:\Untitled2.cpp|35|error: 'Console' has not been declared|
F:\Untitled2.cpp|35|error: 'name' was not declared in this scope|
F:\Untitled2.cpp|36|error: 'Console' has not been declared|
||=== Build finished: 7 errors, 0 warnings (0 minutes, 0 seconds) ===|

我需要在代码中添加什么?

2 个答案:

答案 0 :(得分:6)

该代码不是C ++,而是C++/CLI。使用Microsoft编译器。

答案 1 :(得分:2)

Console是一个.NET类,只能由C ++ / CLI访问。

Regular C ++不使用.NET框架,也无法访问其中的类。

所以你需要决定你正在写哪种语言。