C++类中定义常量变量的有关问题

C++类中定义常量变量的问题
之前一直知道在c++中的自定义类中,常量必须在构造函数的初始化列表中初始化或者设置为static。记得之前在VS验证过上都没有问题。但是今天无意在VS2013编译器写代码时候发现直接赋值的形式居然不报错,而且可以实现初始化。
本人编译器中形式如下
class A

     const int i=10;
};
居然是可以通过编译的,到底是什么原因呢。求大神们指点。

------解决方案--------------------
最新的C++11标准允许非static数据在类中初始化