次のコードを検討してください。
#include <queue>
#include <memory>
std::shared_ptr<char> oneSharedPtr(new char[100]);
std::queue<std::shared_ptr<char>> stringQueue;
stringQueue.queue(oneSharedPtr);
これにより、
error C2274: 'function-style cast' : illegal as right side of '.' operator
どうしてこれなの?キューで共有ポインターを使用しても安全ですか (共有ポインターの参照カウントは pop で 0 になりますか)?