初学:有关数组的赋值

zsjiaming 2005-12-30 10:35:12
static int aaa[7]={1,2,3,4,5,6,7};
这个变量在过程中赋值是没问题的.


但对于如何把aaa做为一个类的成员,这样就有错误提示

class CCImageApp : public CWinApp
{
public:
CCImageApp();
static int aaa[7]={1,2,3,4,5,6,7};

// Overrides
public:
virtual BOOL InitInstance();
// Implementation

public:
afx_msg void OnAppAbout();
DECLARE_MESSAGE_MAP()
};

那么正确的该怎么做?

因为初学,所以尽量详细一些。
...全文
357 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
pomelowu 2005-12-30
  • 打赏
  • 举报
回复
(2)只声明,在类的构造函数中赋值:
aaa[4]={1,1,1,1}; //这里出会出错

这种语法只能在定义的时候用,其他时候不能这么对数组赋值。

(3)不能使用循环赋值:
原因:我真实的数组是一个255个的数组,而且每个数是不同的。
谢谢各位回复,我想在类中加一个数组变量,并且初始化这{1,1,1,1}

在类外面写一个数组,把数据放进去;构造函数中赋值到类成员中

int g_aTemp[256] = {1,2,3....};
class CCImageApp : public CWinApp
{
public:
int aaa[256];
CCImageApp();

// ...
}

CCImageApp::CCImageApp()
{
memcpy(aaa, g_aTemp, 256);
// ...
}
spiderman111 2005-12-30
  • 打赏
  • 举报
回复
UP
-----------------------------
打造国内最大免费编程资源站
有尝招聘C/C++版主 硬件嵌入式开发版主。
有兴趣的来瞧瞧,网址:www.dvpx.com
联系MSN:kekesoft@hotmail.com
qq:8502928
zsjiaming 2005-12-30
  • 打赏
  • 举报
回复
我用的是VC++ 

(1)只去掉STATIC也不行
int aaa[4]={1,1,1,1};
报错:error C2334: “{”的前面有意外标记;跳过明显的函数体
(2)只声明,在类的构造函数中赋值:
aaa[4]={1,1,1,1}; //这里出会出错
(3)不能使用循环赋值:
原因:我真实的数组是一个255个的数组,而且每个数是不同的。
谢谢各位回复,我想在类中加一个数组变量,并且初始化这{1,1,1,1}
lixiaosan 2005-12-30
  • 打赏
  • 举报
回复
h文件一般用做声明。。remember

cpp来定义
HelloIvan2005 2005-12-30
  • 打赏
  • 举报
回复
把static 去掉, 初始化可以在构造函数中进行,也可直接在对象中循环复制。
//test.h
class CA
{
public:
int CArr[5];
void fun();
};

//test.cpp
#include"test.h"

#include<iostream>
using namespace std;

void CA::fun()
{
cout << "void fun()" << endl;
}


//main.cpp
#include "test.h"

void main()
{
CA a;
for(int i = 0; i < 5; i++)
a.CArr[i] = i + 1;
}
pomelowu 2005-12-30
  • 打赏
  • 举报
回复
去掉static,然后在构造函数中循环赋值。

或者这么做:
// 头文件中
class CCImageApp : public CWinApp
{
public:
CCImageApp();
static int aaa[7]; // 仅仅是声明

// Overrides
public:
virtual BOOL InitInstance();
// Implementation

public:
afx_msg void OnAppAbout();
DECLARE_MESSAGE_MAP()
};

// cpp文件中
int CCImageApp::aaa[7] = {1,2,3,4,5,6,7}; // 实现这个数组
pomelowu 2005-12-30
  • 打赏
  • 举报
回复
去掉static
资源下载链接为: https://pan.quark.cn/s/22ca96b7bd39 C#初学者必看!数组的插入、删除与字符串修改操作详解。这些实用技巧非常适合初学者,希望能为大家的学习提供帮助,让我们一起进步。 在C#中,数组是一种常用的数据结构,用于存储一系列相同类型的元素。对于初学者来说,掌握数组的基本操作,如插入、删除和修改字符串,是非常重要的。这些操作不仅能帮助你更好地理解和使用数组,还能为后续的学习打下坚实的基础。 数组的插入操作是指在数组的指定位置添加一个新元素。由于数组的大小在声明时就已经确定,因此插入操作需要一些技巧。一种常见的方法是创建一个新的数组,将原数组的元素复制到新数组中,并在指定位置插入新元素。例如,如果我们要在数组[1, 2, 3]的第2个位置插入数字4,可以先创建一个长度为原数组长度 + 1的新数组,然后将原数组的元素依次复制到新数组中,并在第2个位置插入4,最后将新数组赋值给原数组变量。 删除数组中的元素与插入操作类似,也需要借助一个新的数组来实现。当你需要删除数组中的某个元素时,可以创建一个长度为原数组长度 - 1的新数组,然后将原数组中除目标元素外的其他元素复制到新数组中。例如,要删除数组[1, 2, 3, 4]中的第3个元素3,可以创建一个长度为3的新数组,将1、2和4依次复制到新数组中,最后将新数组赋值给原数组变量。 在C#中,字符串是不可变的,这意味着一旦字符串被创建,其内容就不能被修改。但是,我们可以通过一些方法来实现字符串的“修改”。例如,可以使用StringBuilder类来高效地操作字符串。StringBuilder允许你在字符串中插入、删除或替换字符。如果你想修改字符串"Hello"中的第2个字符e为a,可以先将字符串转换为StringBuilder对象,然后使用Replace方法将e替换为a,最后再将StringB

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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