在我的家庭作业“使用C++”中有一个问题:
问:按照注释的要求,完成以下程序,然后显示输出。
#include <iostream>
using std::cout;
using std::cin;
using std::endl;
// Define an enumerated datatype Language
// Its legal values are german,english,spanish,and turkish
int main()
{
/* Define a varaible lang of type Language */
我需要输出两个不同的数组(或范围),这两个数组都由gets.chomp获取,其中一个是字符串,另一个必须是整数。但是我不想转置或者我不想使用压缩方法。因为当我将其中一个连续输出时,另一个可能会颠倒两次或更多次。
name = $name
num = $num
arr = $arr
puts "num?"
num = gets.chomp.to_i
arr = []
for x in (1..num)
puts "#{x}. name? " #its can be "A" ,"B","C"
name = gets
在下面的人为设计的C#代码中,我不喜欢枚举名称与属性名称相同。
public enum CollarType
{
Classic,
VNeck
}
public class Shirt
{
public CollarType CollarType { get ... }
}
在过去,当更多的人使用匈牙利语/其他奇怪的名称,如class CShirt,这种冲突不会发生。但今天我经常遇到它。
你是如何处理这种情况的?你是接受了这么多东西同名的事实,还是你有一个更好的命名方案?
我试图在意大利语un anno e mezzo中输出以下句子,其中的句子是名词短语列表。我的代码:
lin
Sentence = mkUtt(mkNP
(and_Conj)
(mkNP (aSg_Det) (mkN("anno")))
(mkNP (mkN("mezzo")))
);
但上述代码的输出是un anno ed il mezzo。为什么我的输出中有il限定符?我找不到这个问题的原因。谢谢!
enum Color {RED, GREEN, BLUE};
class SwitchEnum
{
public static void main(String[] args)
{
Color c = Color.GREEN;
switch(c)
{
case RED:
System.out.println("red");
break;
case GREEN:
System.out.println("green");
break;
在C中,如果我们在enum中重新声明变量,那么编译器会给出一个错误,即"'i‘“重新声明为不同类型的符号”.It Ok“。
#include <stdio.h>
int i = 10;
struct S
{
enum
{
i = 20
}e;
};
int main()
{
printf("%d\n", i);
}
但是,在C++中,如果我们在枚举中重新声明变量,那么它就正常工作了。
#include <iostream>
using namespace std;
int i
我读到enum的一个良好实践是scala,如下所示。
我故意用Serializable扩展这个类。
sealed abstract class MyEnum(val nature: String) extends Serializable
case object A extends MyEnum("a")
case object B extends MyEnum("b")
问题是,我希望枚举应该是其他可扩展的,因此我必须删除密封关键字才能启用此功能。
abstract class MyEnum(val nature: String) extends Serial
标题可能看起来太笼统了,但它就在这里。我找到了这段代码:
//class, main, etc.
char c;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter e to exit!");
do
{
c=(char)br.read();
System.out.println(c);
}while(c!='q');
/*Example output:
12ae
1
2
a
e *