C++ 错误:无效使用void表达式 #包括 #包括 使用名称空间std; 阶级胜利 { 受保护的: GtkWidget*窗口; 公众: GtkWidget*get_window(){return window;} void set_window(GtkWidget*w){window=w;} 无效集合标题(字符串s) { gtk_window_set_title(gtk_window(window),s.c_str()); } }; int main(int argc,char*argv[]) { /*初始化GTK+及其所有支持库*/ gtk_init(&argc,&argv); 赢得obj1; obj1.设置_窗口(gtk_窗口_新建(gtk_窗口_顶层)); obj1.设置标题(“你好世界”); GtkWidget*w=obj1.get_window(); obj1.设置窗口(gtk窗口小部件显示(w)); /*将控制权移交给主回路*/ gtk_main(); 返回0; }
C++ 错误:无效使用void表达式 #包括 #包括 使用名称空间std; 阶级胜利 { 受保护的: GtkWidget*窗口; 公众: GtkWidget*get_window(){return window;} void set_window(GtkWidget*w){window=w;} 无效集合标题(字符串s) { gtk_window_set_title(gtk_window(window),s.c_str()); } }; int main(int argc,char*argv[]) { /*初始化GTK+及其所有支持库*/ gtk_init(&argc,&argv); 赢得obj1; obj1.设置_窗口(gtk_窗口_新建(gtk_窗口_顶层)); obj1.设置标题(“你好世界”); GtkWidget*w=obj1.get_window(); obj1.设置窗口(gtk窗口小部件显示(w)); /*将控制权移交给主回路*/ gtk_main(); 返回0; },c++,gtk,C++,Gtk,gtk_widget_show()返回void 您正在调用obj1.set\u窗口(void) 更改: #include <gtk/gtk.h> #include <string> using namespace std; class WIN { protected: GtkWidget *window; public: GtkWidget* get_window(){ return window; } void s
gtk_widget_show()
返回void
您正在调用obj1.set\u窗口(void)
更改:
#include <gtk/gtk.h>
#include <string>
using namespace std;
class WIN
{
protected:
GtkWidget *window;
public:
GtkWidget* get_window(){ return window; }
void set_window(GtkWidget* w){ window = w; }
void set_title(string s)
{
gtk_window_set_title (GTK_WINDOW(window), s.c_str());
}
};
int main (int argc, char *argv[])
{
/* Initialize GTK+ and all of its supporting libraries. */
gtk_init (&argc, &argv);
WIN obj1;
obj1.set_window(gtk_window_new (GTK_WINDOW_TOPLEVEL));
obj1.set_title("Hello World");
GtkWidget *w = obj1.get_window();
obj1.set_window(gtk_widget_show(w));
/* Hand control over to the main loop. */
gtk_main();
return 0;
}
到
似乎gtk_widget_show()返回void。这是您以无效方式使用的void表达式
< /P>删除C标签,因为这显然不是C代码。@ Timalk Geel'Kal:谢谢你的建议,我会处理这些。在C++中,<代码>(空)<代码>是不必要的,它只是<代码>()。我据此编辑了你的文章。@DeadMG:请不要。void是用来说明他在做什么的,它将void传递给一个需要其他东西的函数。@DeadMG:编辑没有被破坏的东西也是不礼貌的,尤其是当你的编辑本身被破坏的时候。
obj1.set_window(gtk_widget_show(w));
gtk_widget_show(w);