3
我儘量避免在我的C++中使用「命名空間」來避免污染我的命名空間。但是,我想利用助推賦值操作符來做這樣的事情:有沒有辦法使用boost :: assign操作符而不會污染命名空間?
std::vector tmp; tmp += "abc","def","asdf","foo","blah","dfkef";
不添加「using namespace boost :: assign;」這將產生一個錯誤:
error: no match for 'operator+=' in 'tmp += "abc"'
有沒有一種方法,使利用升壓這些運營商不使用命名空間?
我想如果你的函數足夠大,你可以引入`using`語句的作用域,你的函數應該被分割或者你的標準太嚴格了,而using語句對函數的其他部分沒有影響。引入範圍是沒有意義的。 – GManNickG 2011-02-03 23:24:35