About arrays and their implementation

I have two questions.

A) In std::array, the following is allowed:
std::array<int, 3> arr = {1, 2, 3};
Is it possible to do this for a custom class? If so, how?

B) Is it possible to write a class that functions and performs pretty much like std::vector in pure C++? I realize that the STL is implemented differently between, say, G++ and VC++, but is the original code written in C++, or does it also use Assembly or C?

I'd appreciate any help on these matters!
A) Possible, yes. How? With suitable constructor. C++11 supports multiple initialization syntaxes: http://www.informit.com/articles/article.aspx?p=1852519

B) Yes.

We don't really care how the library internals are implemented, as long as they fulfill the requirements stated in the standard. A lot of standard library is templates, template code is visible in headers, and obviously C++ (for C or assemply does not have such template syntax).
I got it, thanks for the answer!
Topic archived. No new replies allowed.