错误 3 error C2143: 语法错误 : 缺少“;”(在“”的前面)

csuyuanweiqingking 2010-08-12 08:35:42
#pragma once
#include <Windows.h>
#include "stdAfx.h"
#include <string.h>
#include <iostream>
//#include "Idrive.h"

class CActivemovie3
{
protected:

CActivemovie3();

public:

CString getfilename(); //获得文件的位置

void setfilename(const char* lpsznewvalue); //设置文件的位置

void run(); //播放

void pause(); //暂停

void stop(); //停止

void setcurrentposition(double newvalue); //设置播放的位置

double getcurrentposition(); //获得播放的位置

long getvolume(); //获得音量

void setvolume(long nnewvalue); //设置音量

void setautostart(bool bnewvalue); //设置自动播放

public:
virtual ~CActivemovie3();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif

};

这是个项目中的一个头文件,运行显示如下错误
错误 3 error C2143: 语法错误 : 缺少“;”(在“<class-head>”的前面) c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.h 8
错误 4 error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.h 8

...全文
3984 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
Allen_Zhong 2010-11-14
  • 打赏
  • 举报
回复
error C2143: 语法错误 : 缺少“;”(在“*”的前面)
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
warning C4183: “GetDocument”: 缺少返回类型;假定为返回“int”的成员函数
arong1234 2010-08-14
  • 打赏
  • 举报
回复
警告信息也要看情况得,要具体问题具体分析。一旦代码得编码有问题,其实什么可能得错误都出现,简单得认为“警告都可以忽略”就不对了。警告只是说是不是错误还不确定,不是说一点错误没有[Quote=引用 12 楼 libinfei8848 的回复:]
引用 9 楼 arong1234 的回复:
要学会理解错误信息,“该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
”,说的多明确


这些是警告信息,一般不去理会也不会出现问题吧
[/Quote]
libinfei8848 2010-08-13
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 arong1234 的回复:]
要学会理解错误信息,“该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
”,说的多明确
[/Quote]

这些是警告信息,一般不去理会也不会出现问题吧
arong1234 2010-08-12
  • 打赏
  • 举报
回复
楼主?谁是楼主?你上面的错误显然是有非法错误,你所谓的“以上的情况不存在程序中”,到底哪些存在,哪些不存在?[Quote=引用 10 楼 csuyuanweiqingking 的回复:]
楼主所说的情况,是导致出现这种错误的原因,但以上的情况不存在程序中,程序是在英文输入法下自己写的一点东西,想加入原来的一个系统中去,但在写完后,调试时出现了上述错误。在网上寻找的答案中,有几种可能造成这种错误,但我想最可能的是在某个头文件中缺少了包含其他的头文件
[/Quote]
csuyuanweiqingking 2010-08-12
  • 打赏
  • 举报
回复
楼主所说的情况,是导致出现这种错误的原因,但以上的情况不存在程序中,程序是在英文输入法下自己写的一点东西,想加入原来的一个系统中去,但在写完后,调试时出现了上述错误。在网上寻找的答案中,有几种可能造成这种错误,但我想最可能的是在某个头文件中缺少了包含其他的头文件
arong1234 2010-08-12
  • 打赏
  • 举报
回复
要学会理解错误信息,“该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
”,说的多明确
arong1234 2010-08-12
  • 打赏
  • 举报
回复
而且:注意大小写, stdafx 中的A, Windows中的w,也许对于文件名没有什么大关系,但是如果你代码在unix下,大小写的不是文件名,你都会吃大苦头
arong1234 2010-08-12
  • 打赏
  • 举报
回复
从错误信息看,你代码应该是从哪儿copy paste过来,或者带中文输入法输入的,里面有一些不可见的非法字符,因此编译不了

你需要避免copy paste代码,把出错的那行代码以及以前的两行代码删除并手工重新输入一下,并避免打开中文输入法

另外,#include "stdafx.h" 必须是每个cpp文件的第一行,在这行之前的任何代码都会被vc直接忽略,不能象你这样在头文件包含
csuyuanweiqingking 2010-08-12
  • 打赏
  • 举报
回复
根据网上有些前辈的说法,应该是少了某个头文件,但不知道具体少了哪个头文件,所以向大家请教下
csuyuanweiqingking 2010-08-12
  • 打赏
  • 举报
回复
调试遇到的错误:

1>------ 已启动生成: 项目: Idrive, 配置: Debug Win32 ------
1>正在编译...
1>Activemovie3.cpp
1>Idrive.cpp
1>e:\program file\ogresdk\include\ogreparticleemitter.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>e:\program file\ogresdk\include\ogreparticlesystem.h(608) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.h(8) : error C2143: 语法错误 : 缺少“;”(在“<class-head>”的前面)
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.h(8) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>IdriveView.cpp
1>e:\program file\ogresdk\include\ogreparticleemitter.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>e:\program file\ogresdk\include\ogreparticlesystem.h(608) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.h(8) : error C2143: 语法错误 : 缺少“;”(在“<class-head>”的前面)
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.h(8) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>InstructionView.cpp
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\instructionview.cpp(124) : fatal error C1071: 在注释中遇到意外的文件结束
1>MainFrm.cpp
1>e:\program file\ogresdk\include\ogreparticleemitter.h : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>e:\program file\ogresdk\include\ogreparticlesystem.h(608) : warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止数据丢失
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.h(8) : error C2143: 语法错误 : 缺少“;”(在“<class-head>”的前面)
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.h(8) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
1>正在生成代码...
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.cpp(49) : warning C4700: 使用了未初始化的局部变量“result”
1>c:\users\administrator\desktop\8_4_框架-idrive\idrive\idrive\activemovie3.cpp(58) : warning C4700: 使用了未初始化的局部变量“result”
1>生成日志保存在“file://c:\Users\Administrator\Desktop\8_4_框架-Idrive\Idrive\Idrive\Debug\BuildLog.htm”
1>Idrive - 7 个错误,8 个警告
========== 生成: 成功 0 个,失败 1 个,最新 0 个,跳过 0 个 ==========

独酌逸醉 2010-08-12
  • 打赏
  • 举报
回复
这么好像看不出来啊。
csuyuanweiqingking 2010-08-12
  • 打赏
  • 举报
回复
楼上所说的已经试验过了,是行不通的
ayw215 2010-08-12
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 jixingzhong 的回复:]

#include "stdAfx.h"

应该作为第一行
[/Quote]
顶老大
jixingzhong 2010-08-12
  • 打赏
  • 举报
回复
#include "stdAfx.h"

应该作为第一行
内容概要:本文系统梳理了C++的核心基础知识,涵盖面向对象三大特性(封装、继承、多态)、动态内存管理(new/delete与malloc/free的区别)、作用域、引用与指针、类与对象、构造与析构函数、静态成员、常函数、运算符重载、拷贝构造、赋值操作符、单例与工厂设计模式、STL常用容器(vector、list、deque、map、set、unordered_map)及其操作,以及迭代器、算法和函数对象等内容。文章通过代码示例深入讲解了C++中关键机制的实现原理,如多态的虚函数表机制、智能指针替代方案、内存泄漏防范等。; 适合人群:具备C++基础语法知识,有一定编程经验,希望深入理解C++面向对象机制、内存管理和常用设计模式的初中级开发者,尤其适合准备面试或提升系统编程能力的学习者; 使用场景及目标:①掌握C++面向对象核心机制的底层原理与实现方式;②理解常见设计模式在C++中的应用;③熟练使用STL容器与算法进行高效编程;④辨析C++中易混淆概念(如new/malloc、引用/指针、深拷贝/浅拷贝); 阅读建议:建议结合代码示例动手实践,重点关注类的构造与析构过程、多态实现机制、STL容器的操作特性及设计模式的应用场景,理解其背后的设计思想而不仅仅是语法使用。
内容概要:本文档介绍了基于3D FDTD(时域有限差分)方法在MATLAB平台上对微带线馈电的矩形天线进行仿真分析的技术方案,重点在于模拟超MATLAB基于3D FDTD的微带线馈矩形天线分析[用于模拟超宽带脉冲通过线馈矩形天线的传播,以计算微带结构的回波损耗参数]宽带脉冲信号通过天线结构的传播过程,并计算微带结构的回波损耗参数(S11),以评估天线的匹配性能和辐射特性。该方法通过建立三维电磁场模型,精确求解麦克斯韦方程组,适用于高频电磁仿真,能够有效分析天线在宽频带内的响应特性。文档还提及该资源属于一个涵盖多个科研方向的综合性MATLAB仿真资源包,涉及通信、信号处理、电力系统、机器学习等多个领域。; 适合人群:具备电磁场与微波技术基础知识,熟悉MATLAB编程及数值仿真的高校研究生、科研人员及通信工程领域技术人员。; 使用场景及目标:① 掌握3D FDTD方法在天线仿真中的具体实现流程;② 分析微带天线的回波损耗特性,优化天线设计参数以提升宽带匹配性能;③ 学习复杂电磁问题的数值建模与仿真技巧,拓展在射频与无线通信领域的研究能力。; 阅读建议:建议读者结合电磁理论基础,仔细理解FDTD算法的离散化过程和边界条件设置,运行并调试提供的MATLAB代码,通过调整天线几何尺寸和材料参数观察回波损耗曲线的变化,从而深入掌握仿真原理与工程应用方法。

65,208

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧