如果我写这个程序:
#include <iostream> namespace foo { struct bar { int x; }; } int main (void) { struct foo::bar *a = new struct foo::bar; delete a; return 0; }
并编译:
g++ main.cxx -Wall -Wextra
它给我这个警告:
main.cxx: In function ‘int main()’: main.cxx:10:39: warning: declaration ‘struct foo::bar’ does not declare anything [enabled by default]
但是,如果我在new关键字后面取出了struct关键字:
#include <iostream> namespace foo { struct bar { int x; }; } int main (void) { struct foo::bar *a = new foo::bar; delete a; return 0; }
解决方法
原文地址:https://www.jb51.cc/c/114468.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。