База ответов ИНТУИТ

Программирование на С/С++

<<- Назад к вопросам

Указателю на какой тип можно присвоить указатель на тип Т?

(Ответ считается верным, если отмечены все правильные варианты ответов.)

Варианты ответа
указателю на тип, совместимый с T
указателю только на тип Т
указателю на тип, тождественный Т(Верный ответ)
указателю на void(Верный ответ)
Похожие вопросы
<pre> //====================== start of sample.cpp ========================== #include &lt;boost/variant/variant.hpp&gt; struct A {}; struct B { B(int src); private: B(const B&amp; src); }; struct C { C(int src); private: C(); }; struct D {}; int main(int argc, char* argv[]) { boost::variant&lt;int, A, B, C&gt; myvariant; int x; int* y; A a; B b(x); C c(x); D d; myvariant = x; myvariant = y; myvariant = a; myvariant = b; myvariant = c; myvariant = d; return 0; } //====================== end of sample.cpp ========================== </pre> Какие объекты можно присвоить объекту myvariant из примера в файле sample.cpp?
Каковы минимальные требования к объектам, указатель на которые могут быть храниться в умных указателях?
<pre> //====================== start of sample.cpp ========================== #include &lt;boost/shared_ptr.hpp&gt; #include &lt;boost/scoped_ptr.hpp&gt; #include &lt;boost/weak_ptr.hpp&gt; #include &lt;vector&gt; struct A { virtual ~A(); }; struct B: public A {}; struct C {}; void foo1(boost::scoped_ptr&lt;A&gt; a); void foo2(boost::scoped_ptr&lt;B&gt;&amp; a); void foo3(boost::shared_ptr&lt;C&gt; a); void foo4(boost::scoped_ptr&lt;A&gt;* a); void foo5(std::vector&lt; boost::scoped_ptr&lt;C&gt; &gt;&amp; c); int main(int argc, char* argv[]) { boost::scoped_ptr&lt;A&gt; b1(new A); boost::scoped_ptr&lt;B&gt; b2(new B); boost::scoped_ptr&lt;C&gt; b3(new C); boost::scoped_ptr&lt;A&gt; b4; std::vector&lt; boost::scoped_ptr&lt;C&gt; &gt; v1; v1.push_back(b3); foo1(b1); foo2(b2); foo3(b3.lock()); foo4(&amp;b4); foo5(v1); return 0; } //====================== end of sample.cpp ========================== </pre> В каких из функциях умный указатель boost::scoped_ptr используется правильно?
Какие операции можно делать с ссылками?
Какие операции можно выполнять с объектом boost::any?
Какими способами можно передать массив в функцию?
Каким образом можно оценить «структурное качество» программы?
Какую информацию можно получить с помощью утилиты pfunct?
Каким способом можно пытаться принудить функцию к встраиванию в компиляторе GCC?
Каким образом можно оптимизировать работу с памятью в high-load приложениях?