`
yaojingguo
  • 浏览: 207996 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

& operator optional in function pointer assignment

 
阅读更多

Code:

#include <stdio.h>

int info(int no) {
  printf("no: %d\n", no);
}

int main(int argc, const char *argv[]) {
  int (*fp)(int); 
  fp = info;
  printf("function pointer: %p\n", fp);
  fp = &info;
  printf("function pointer: %p\n", fp);
  return 0;
}
 

 

From the standard (6.3.2.1/4) :

function designator is an expression that has function type. Except when it is the operand of the sizeof operator or the unary & operator, a function designator with type ‘‘function returning type’’ is converted to an expression that has type ‘‘pointer to function returning type’’.

 

Refer to 

http://stackoverflow.com/questions/4298654/operator-optional-in-function-pointer-assignment.
分享到:
评论

相关推荐

    C++中的模拟class string类的代码 cpp

    friend const string & operator+(const string &s1,const string &s2); friend std::ostream & operator(std::ostream &theStream,const string & str); friend const string & operator+(const string &s1,...

    Polynominal

    void AddTerms(istream& in); void Output(ostream& out) const; void PolyAdd(Polynominal & r); void Polymultip(Polynominal & m); private: Term * theList; friend ostream & operator (ostream &,...

    C++自编String类代码

    friend ostream& operator(ostream&s,const String&a) { s; return s; } friend istream& operator&gt;&gt;(istream&i,const String&a) { i&gt;&gt;a.str; return i; } ~String(); private: int len; char *str...

    internal complier error

    friend istream &operator&gt;&gt;(istream &in, Sample & s); private: int x; }; friend ostream &operator(ostream &out, const Sample s) { cout ; return out; } friend istream &operator&gt;&gt;(istream &in, ...

    C++ 模板写的短小字符串类,用于替换字符数组和std::string

    friend std::ostream & operator(std::ostream& os, const TinyString&lt;K&gt;& str); template, size_t L&gt; friend bool operator == (const TinyString&lt;K&gt;& s1, const TinyString&lt;L&gt;& s2); //...... uint8...

    webrtc m108分支补丁

    ../../audio/audio_send_stream.cc(344,25): error: object of type 'absl::optional, TimeDelta&gt;&gt;' cannot be assigned because its copy assignment operator is implicitly deleted frame_length_range_ = ...

    C++矩阵运算的实现

    friend ostream& operator (ostream& output, const Matrix& zMatrix);//重载 friend istream& operator &gt;&gt; (istream& input, Matrix& zMatrix);//重载 &gt;&gt; Matrix operator + (const Matrix& zMatrix)const;//...

    C++标准输入输出流

    在istream输入流类中定义有对右移操作符&gt;&gt;重载的一组公用成员函数,函数的具体声明格式为:istream& operator&gt;&gt;(istream& (*pf)(istream&));istream& operator&gt;&gt;(ios& (*pf)(ios&));istream& operator&gt;&gt;(streamsize ...

    fanuc optional Function operator's Manual.pdf

    - 标题《FANUC optional Function operator's Manual.pdf》说明了该文档是一本关于FANUC(发那科)机器人选项功能的操作手册。FANUC是全球知名的工业机器人制造商,提供广泛的自动化解决方案。 - 手册的标题暗示了它...

    分数计算器

    bool operator&gt;(int n,Fraction &c); bool operator&gt;(Fraction &c,Fraction &f); bool operator&gt;=(int n,Fraction &c); bool operator&gt;=(Fraction &c,Fraction &f); bool operator==(int n,Fraction &c); bool ...

    P204~210C++deque学习笔记.docx

    string 字符串拼接操作有多种形式,例如使用 += 运算符重载连接字符串,例如 string& operator+= (const char* str),使用 += 运算符重载连接字符,例如 string& operator+= (const char c),使用 += 运算符重载连接...

    带模板操作符重载出现的LINK错误修改方法

    这里的问题在于,`Edge`类模板声明了一个非模板的友元`operator,但实际定义的`operator是一个模板函数。由于声明和定义不匹配,导致链接时找不到对应的函数,从而引发链接错误。 为了解决这个问题,我们可以明确地...

    校园信息管理系统之链表法

    friend istream &operator&gt;&gt;(istream &,Student::student &); friend ostream &operator(ostream &,Student::student &); }; class Teacher{ private: typedef struct teacher{ string name; string sex; ...

    综合实验报告格式.doc

    5. 加、减、乘、除运算符重载:MyComplex& operator+=(const MyComplex& rhs),MyComplex& operator-=(const MyComplex& rhs),MyComplex& operator*=(const MyComplex& rhs),MyComplex& operator/=(const ...

    VC6.0中重载操作符友元函数无法访问类的私有成员的解决办法.docx

    istream &operator&gt;&gt;(istream &in, Sample & s); class Sample{ public: Sample(); // 其他成员... private: int x; }; ``` 2. **在头文件中实现友元函数**:另一种解决方案是将友元函数的实现直接放在...

    C++自己实现的字符串类

    CMstring& operator = (const CMstring& lpszstr); operator LPCTSTR() const; bool operator == (const CMstring&) const; bool operator != (const CMstring&) const; bool operator (const CMstring&) const...

    自己实现C++ String.docx

    friend CString operator+(const CString& string1, const CString& string2); friend CString operator+(const CString& string, TCHAR ch); friend CString operator+(TCHAR ch, const CString& string); ...

    Karel Function Operator`s Manual--FANUC Karel语言操作手册(英文版)

    《Karel Function Operator`s Manual--FANUC Karel语言操作手册(英文版)》是针对FANUC工业机器人二次开发的重要参考资料,详细介绍了如何使用Karel语言进行编程和操作。Karel是一种专为FANUC机器人设计的高级编程...

    VC6.0中重载操作符友元函数无法访问类的私有成员的解决办法.pdf

    friend istream &operator&gt;&gt;(istream &in, Sample & s); private: int x; }; ``` 2. **方法二**:在头文件中直接实现友元操作符函数。这种方法避免了从外部文件引入友元函数,因此编译器不会在类定义之后才找到...

    一维动态数组实现的矩阵类

    double& operator()(const size_t& xr,const size_t& xc);//重载()运算符,可作左值 CVector& operator=(const CVector &);//重载=运算符 double operator*(const CVector & )const;//重载*运算符,两向量相乘 C...

Global site tag (gtag.js) - Google Analytics