Compiler construction Can';t构建C++;程序使用升华文本2,Windows 8

Compiler construction Can';t构建C++;程序使用升华文本2,Windows 8,compiler-construction,build,compilation,build-process,sublimetext2,Compiler Construction,Build,Compilation,Build Process,Sublimetext2,我想你们中的许多人正在或曾经在Windows8上使用Sublime文本2编辑器。我有个奇怪的错误:不能建立C++程序。我的目标是使用Sublime Text 2构建和运行简单的程序,这样它就可以在下面的窗口中显示Xcode或Codeblocks样式的输出 我的C++ .崇高构建(默认设置): 当我编译一个简单的hello world程序时,它编译并运行良好,输出显示在sublime文本的下面板上,与我想要的完全一样 但如果我运行一个更复杂的程序,如以下所示: // main.cpp // L

我想你们中的许多人正在或曾经在Windows8上使用Sublime文本2编辑器。我有个奇怪的错误:不能建立C++程序。我的目标是使用Sublime Text 2构建和运行简单的程序,这样它就可以在下面的窗口中显示Xcode或Codeblocks样式的输出

<>我的C++ .崇高构建(默认设置):

当我编译一个简单的hello world程序时,它编译并运行良好,输出显示在sublime文本的下面板上,与我想要的完全一样

但如果我运行一个更复杂的程序,如以下所示:

//  main.cpp
//  LongestIncreasingSubsequence
#include <iostream>
#include <vector>
#include <limits>
using namespace std;

int main(int argc, const char * argv[])
{


    int n;

    cin >> n;
    vector<int> nums(n);
    vector<int> lis_so_far(n);
    int final_longest = 1;

    for (int i=0; i<n; i++) {
        cin >> nums[i];
        lis_so_far[i] = 1;
    }
    int so_far;
    for (int j=n-1; j>=0; j--) {

        so_far = 0;

        for (int i=j+1; i<n; i++) {
         //   cout << "hi" <<endl;
            if (nums[i] > nums[j]) {
              //  cout << "hello" <<endl;

                if (lis_so_far[i] > so_far ) {
                    so_far = lis_so_far[i];
                    //cout << so_far << endl;
                }

            }
        }
        if (j<n-1) {
            lis_so_far[j] += so_far;
            if (lis_so_far[j] > final_longest) {
                final_longest = lis_so_far[j];
            }
        }
    }

    for (int i=0; i<n; i++) {
        cout << lis_so_far[i] << endl;
    }
    cout << final_longest << endl;


    return 0;
}
如果我对#include limits行进行注释,它会生成,但当我运行它时,它会给我一个权限拒绝错误,即使没有运行命令提示符:

/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/bin/ld: cannot open output file C:\Users\Leonardo\Desktop/main5.exe: Permission denied
collect2: ld returned 1 exit status
有什么想法吗?我只想让ST2像Xcode或代码块一样工作。

这是一个极好的控制台“错误”。这是因为您从未终止最后一次编译。比如说

#include <iostream>
int main(){
cout << "it's a program" << endl;
cin.get() // system pause
}
#包括
int main(){
库特
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/bin/ld: cannot open output file C:\Users\Leonardo\Desktop/main5.exe: Permission denied
collect2: ld returned 1 exit status
#include <iostream>
int main(){
cout << "it's a program" << endl;
cin.get() // system pause
}