#include <cstdlib>
//
class my_stack
{
std::size_t last;
int *data;
std::size_t max_elem;
public :
int top(void) const;
void pop(void);
void push(int);
int size(void) const;
bool empty(void) const;
my_stack();
my_stack(int);
~my_stack();
private:
my_stack(const my_stack&) = delete;
void operator=(const my_stack&) = delete;
};
但是当我编译它时出现了警告
defaulted and deleted functions only available with -std=c++0x or -std=gnu++0x [enabled by default]
我使用g ++编译器。如何避免此警告,可能是我应该使用一些编译器参数。
答案 0 :(得分:0)
我修好了。
问题是我用过
g++ *.cpp -c -std=c++0x
代替
g++ -std=c++0x *.cpp -c