2

最近、C ++ 11のデフォルトおよび削除された関数について学習しようとしましたが、以下にサンプルコードを記述しました。私が実行しようとすると、それは言う:

エラーC2065:'デフォルト':宣言されていない識別子

コード :

#include "stdafx.h"
#include <iostream>
#include <string>

using namespace std;

struct A
{
    int age;

    A(int x): age(x){};
    A() = default;

};

int _tmain(int argc, _TCHAR* argv[])
{
    A test(10);
    cout << test.age << endl;
    return 0;
}
4

2 に答える 2

7

MicrosoftVisualStudioを使用しているようです。申し訳ありませんが、Microsoftコンパイラは、新しいバージョンのVC11でもこの新しい構文を許可していません。

ここで利用可能な機能のリストを確認してください。デフォルトおよび削除された機能はまだ利用できないことがわかります。

于 2012-09-11T10:20:48.100 に答える
1

MSVC++コンパイラを搭載したVisualStudioは、デフォルトおよび削除された関数をサポートしていません。MinGWのG++のようなものを使用する必要があります。

于 2012-09-11T10:18:01.863 に答える