将 const void* 转换为 const int*
我之前没有使用过 void* 和 const_ Correctness 所以我不明白我在下面的代码中做错了什么。我想要的只是将 const 对象的成员函数返回的 void* 转换为 …
为什么“gptr”是basic_streambuf char_type* 的类型而不是 const char_type*?
用于设置streambuf的三个“gptr”的basic_streambuf成员,setg声明为: protected: void setg(char_type *gback, char_type *gptr, char_type *egptr)…
C++ TR1:在 const 方法中使用均匀分布生成随机数的正确方法是什么?
我有一个简单的 const 方法想要生成一个随机数 int Object::const_method() const { std::tr1::uniform_int uni(0,100); // do some calculation retu…
我应该将这些成员函数声明为 const 吗?
我正在编写一些 C++ 代码,其中有几个带有私有方法的管理器对象,例如 void NotifyFooUpdated(); 在该对象的侦听器上调用 OnFooUpdated() 方法。 请注…
c++ 中 const 和没有 const 方法?
我有一个程序,它的许多类都有一些带有关键字 const 的运算符和方法,如下所示: operator const char* () const; operator char* (); void Save(cons…
Qt4 C++指向 const QList 指针的指针
我被指向 const QList ofpoints to Foo 的指针卡住了。我将 Bar 对象中指向 myListOfFoo 的指针传递给 Qux。我使用指向 const 的指针来防止在 Bar 类…
为什么 strtof 和 strtod 的 endptr 参数是指向非常量 char 指针的指针?
strtod 具有以下签名: float strtof(const char *str, char **endptr); double strtod(const char *str, char **endptr); 它们各自将输入字符串 str…
在 C++ 中事后添加常量;
可能的重复: 是否有一些忍者技巧变量声明后使其常量? 考虑以下最小示例: void MutateData(std::string&); int main() { std::string data = "some…
是否有一些忍者技巧可以在声明后将变量设为常量?
我知道答案是 99.99% 否,但我认为值得一试,你永远不会知道。 void SomeFunction(int a) { // Here some processing happens on a, for example: a *…
指向委托给removeAll()的方法的常量指针参数
考虑这样的方法: void Parent::removeChild(Child *child) { children.removeAll(child); } 在这种情况下,由于 child 本身永远不会被修改,因此可以…
无需 const_cast 即可修改 *this 的 Const 方法
我正在编写的程序中出现了以下模式。我希望它不是太做作,但它设法在 const 方法 Foo::Questionable() const 中改变 Foo 对象,而不使用任何 const_ca…
C++ : 自动常量?
当我编译此代码时: class DecoratedString { private: std::string m_String; public: // ... constructs, destructors, etc std::string& ToString(…
C++ 中的 Const 函数和接口
我将使用以下(简单)接口作为示例: struct IObject { virtual ~IObject() {} virtual std::string GetName() const = 0; virtual void ChangeState(…