auto-ptr

    3

    2答えて

    auto_ptrを生成して返すサードパーティのライブラリがあります。しかし、私は本当にいくつかのSTLコンテナを使いたいと思っています。 だから私は1つの方法は、++ポインタ、通常のCに auto_ptr <int> ptr = some_library_call(); を変換することです推測しています。次の作業はできますか? int* myptr = ptr; ない場合は、(はい、私はそ

    3

    3答えて

    std :: auto_ptrを通常のポインタに変換できますか? ​​ ローカルで作成されたauto_ptrポインタを通常のポインタに変換することは可能ですか?

    5

    2答えて

    大きなベクトルを設定する関数の戻り値としてauto_ptrを使用すると、関数がソース関数になります(内部auto_ptrが作成され、 const auto_ptr)。しかし、データにアクセスするためには、auto_ptrを削除する必要があるため、この関数をSTLアルゴリズムで使用することはできません。私が推測する良い例は、サイズNのベクトルのフィールドであり、各ベクトルは100の成分を有する。 W

    0

    1答えて

    これはC++プログラミングの問題です。 他の関数がリストを使用できるように、リストを生成してポインタを返す必要があります。コードは機能しますが、リストに新しいノードを割り当てるために "new"を使用するため、メモリリークが発生します。 リストを使用した後、私はメモリを解放する必要があります。次のように 私のコードは次のとおりです。 #include <iostream> #include <s

    5

    2答えて

    ファクトリクラスを実装しているうちに、私が理解できないような動作のあるstd::auto_ptrが発生しました。問題を次の小さなプログラムに還元したので、始めましょう。 次シングルトンクラスを考えてみましょう。ここでは、リソースを管理するスマートポインタの使用は、主によって決定される #ifndef SINGLETON_H_ #define SINGLETON_H_ #include<ios

    2

    1答えて

    これは私のプロジェクトのサンプルコードです。 プライベートメンバーにアクセスできるように、std :: auto_ptrをフレンドクラスにする必要があります。 #include "stdafx.h" #include <map> #include <iostream> //sample namespace namespace test {

    4

    1答えて

    auto_ptrにテンプレートコピーコンストラクタとオーバーライド演算子関数があるのはなぜですか? C++のISO標準では、auto_ptrに次のインターフェイスを指定しています。 (これは、2003標準のまっすぐコピーされます。) namespace std { template <class Y> struct auto_ptr_ref {}; template<clas

    3

    1答えて

    #include <iostream> #include <string> #include <memory> #include <cstdlib> std::string foo() { return std::string("yyyyyyyyyyyyy"); } void bar(std::string& s) { std::cout << s << s

    0

    1答えて

    私が知る限り、auto_ptrは所有権の移転の概念に基づいて動作します。また、自動ポインタが所有権を別の自動ポインタに転送すると、それがもはや指すオブジェクトを参照することはできません。しかし、これは私が以下のプログラムに示すように見つかったケースではありません。何か不足していますか?助けてください。 #include <iostream> #include <string> #include

    6

    3答えて

    は、次のコードを考えてみましょう: std::auto_ptr<std::string> p; if (p.get() == 0) { ... } をpが初期化されていないことをチェックするための標準的で信頼性の高い方法get()メンバ関数ですか?プラットフォーム、コンパイラ、コンパイラの最適化フラグなどにかかわらず、常に0を返しますか?国連初期化されていないstd::auto