有如下类定义class Sample public:S

2020-11-28 09:54:59 字数 4500 阅读 3569

1楼:匿名用户

staric int val=5;//3

这句错了:

应改成const static int val=5;//3只有静态常量才能在类定义中初始化。

c++/cx 中的ref class怎么定义为密封类

2楼:匿名用户

密封类定义如下,在类名后面加sealed。表示该类不可以被继承。[mw_shl_code=cpp,true]namespace my***p ;}[/mw_shl_code]

3楼:匿名用户

追加一个问题vs2012提示不能在winrt函数成员内使用局部lambda是出于什么考虑0 0好像即使报error程序还是能跑得动

vc++ 里的一个符号,求解什么意思?

4楼:匿名用户

这个是copyc++类的成员初始化列表

像这样用

class sample

};相当于

sample(***x 参数) // 这样的写法虽然也可以但是并不推荐, 比较老的教材可能会这样教

// 但不是个好习惯, 尤其是到了使用派生和定义比较精巧的类时// 因此应该使用冒号, 也就是初始化列表, 比较好的书都会这么建议

5楼:匿名用户

:后面跟着要初始化的实参

6楼:一棵小草

这个是电脑的程序语言 c语言 你的程序写的不全所以我不知道这个程序是什么

7楼:匿名用户

书上有的,就是一种初始化

8楼:匿名用户

楼上回答的挺详细的,其实很多地方必须用初始化列表来进行初始化的。

9楼:网络工程哥

这是成员初始化表的构造函数格式啊,没学过吗?

myclass类定义如下:

10楼:匿名用户

c , 大括号里的话 就是说这个的

构造方法 是一个类要实例成对象 调用的方法; 是必须有 , 但是你创建一个类, 经常不写, 你不写, 不代表你写的类没有, 只要你不写,java底层都会生成一个默认的无参数的方法!

但是:如果你写了一个构造方法, 不管有参无参, 系统就不会再默认生成 , 这时如果你写的是有参的,

所以:一般来说, 只要写了有参的构造函数,都要写一个无参的构造函数

11楼:最酷の虫子

bc都是对的,b是调用无参的构造方法创建一个空的对象.c是利用带参数的构造方法创建一个对象.

a明显是错的.d该类没有传两个参数的构造方法,所以错了

c#中用private声明一个类是什么意思?

12楼:海洋

private,只有类内可直接访问,

protected,类内和子类可直接访问,public,谁都能直接访问。

继承类型意思是说把父类放在哪。

举例:class a;

a a;

a.a1;//ok

a.a2;//error

a.a3;//error

class b:public a

}; b b;

b.a1,b.a2,b.a3与a.a1,a.a2,a.a3一样,因为是class b:public a,相当于把a放到了b的public部分。

如 class b:private a{};

则 b.a1,b.a2,b.a3都error,因为相当于把a全放到了b的private部分,从b来看这三个变量,都是private的。

13楼:匿名用户

private 是修饰符

它和protected, public一起,都是对类的访问权限进行修饰,或者说是限制,

private,只有类内可直接访问,

partial关键字的作用是将你的 class 分为多个部分,编译器会将多个部分拼到一起去。

例子:public partial class sampleclass

}public partial class sampleclass}和

public class sampleclass

public void methodb()

}是等价的.

14楼:匿名用户

在c#中 class不能显示地声明为private

声明一个不能被外部所有地方访问的 private class 有什么意义?(我不知道)

至于partial 以下是msdn片断

////////////////////////////

可以将类、结构或接口的定义拆分到两个或多个源文件中。每个源文件包含类定义的一部分,编译应用程序时将把所有部分组合起来。在以下几种情况下需要拆分类定义:

处理大型项目时,使一个类分布于多个独立文件中可以让多位程序员同时对该类进行处理。

使用自动生成的源时,无需重新创建源文件便可将**添加到类中。visual studio 在创建 windows 窗体、web 服务包装**等时都使用此方法。您无需编辑 visual studio 所创建的文件,便可创建使用这些类的**。

若要拆分类定义,请使用 partial 关键字修饰符,如下所示:

c# 复制**

public partial class employee

}public partial class employee}

class a { public: static void f(a a);//这句什么意识? private: int x; }

15楼:繁星满天

定义了一个名称为a的类

在类中定义了一个f的方法和变量。

方法f是全局的。

c++ class a {private int x ;public a(int i =0):x(0) {} a(int i =0):x(i)

16楼:慕容莹华汪菲

a a(1);输出1,这个没什么解释的,主要是看为什么b b(2,3);会输出203。

b(int i,int j):a(i)这一句用i初始化基类a,输出2;

b的数据成员a没有显式初始化,用默认的a(int i=0)初始化a,输出0;

cout<

using namespace std;

class a

};class b: public a

};int main()

17楼:匿名用户

aa(1)输出1

bb(2,3)执行b的构造函数

第一步执行publicb(inti,intj):a(i)中的a(i)(先执行父类的构造函数)输出2

再生成b的成员变量private:aa;输出0再执行cout<

18楼:匿名用户

怎么可以有两个参数一样的构造函数a(int),会报错的吧

自学c++遇到的问题,求大神解答,程序如下:谢谢~

19楼:匿名用户

#include

#include

classsample

//这里定义有参构造函数,所以这个类的构造函数有重载sample(inta,intb)

voiddisp()

{cout<<"x="<

20楼:按小朋友得路

这就是体现了重载构造函数,重载定义好想是函数名相同,参数类型不同,这两个函数不正是完美的体现吗

21楼:匿名用户

这里是重载了sample函数,第一行给x,y初始化值0,之后的调用中如果x和y没有传值,则x=y=0;而第二行另x,y可以传参数,只后主函数中传了值2,3,所以执行函数体时x=2,y=2,输出成了 x=2,y=3;构造函数初始化了两遍,体现了重载

22楼:匿名用户

你第一个问题就是啊。函数名相同,参数列表不同

23楼:time棉花糖

你的第一个问题就体现了,sample函数两种实现方式

class point { int x_,y_; public: point():x_(0),y_(0){} point(int x,int y=0)}:

24楼:匿名用户

a(2),b[3]

这两个东西一个是变量一个是数组,变量执行一次是没有问题的,数组相当于3个变量,执行3次也没什么问题吧。

至于指针,其实任何指针都是一个int,*c[4]的意义仅仅是4个int的数组。

point *pp=new point;只有执行这样的语句才会调用构造函数,确切的是new point这个过程才调用构造函数。