Question: For example:

`shared_ptr<const shared_ptr<const int> > pp;`

is fairly intimidating... whereas

`const int ^ const ^ pp;`

is instantly reminiscent of the raw pointer equivalent

`const int * const * pp;`

Answer: 
No; this would be A Bad Idea.

One of the greatest advantages of C++ is that there are different ways to manage memory and other resources and you get to choose the best way in each situation. `shared_ptr` is just one way; others include `auto_ptr`, `unique_ptr` (from C++0x), and `intrusive_ptr` and `scoped_ptr` (from Boost). 

Many other libraries have their own smart pointer classes. It doesn't make a whole lot of sense to make `shared_ptr` the "preferred" smart pointer.

The `^` symbol is already used by several other languages derived from C and C++. C++/CLI uses it for managed handles and Objective C uses it for blocks.
Very unlikely. C++ is already an intimidatingly complex languages and adding one more feature with potential ambiguities (XOR operator already used) + the fact that Microsoft's CLI version of C++ uses this syntax for managed references -> chances for it happening are close to zero.